728x90
현재 쓰고있는 방의 개수를 넣을 배열을 하나 넣은 후, 손님이 들어올때마다 종료시간이 된 손님들을 내보내는 방식으로 코드를 구현하였다.
손님이 나간 이후 10분동안 청소를 해야하므로, 종료시간을 그냥 10분 더 연장하여 생각하였다.
시간,분으로 나누어져 있는 값들을 모두 분으로 바꾸어서 계산하기 쉽게 바꾸어주었다.
const hTom = (str) => {
const [h,m] = str.split(":")
return +h * 60 + +m
}
function solution(book_time) {
const time = book_time.map(el => [hTom(el[0]) , hTom(el[1])+10])
time.sort((a,b) => a[0]-b[0])
let ret = 0;
let room = []
for (const [s,e] of time) {
room = room.filter(el => el[1] > s )
room.push([s,e])
ret = ret > room.length ? ret : room.length
}
return ret;
}
728x90
'FrontEnd > 프로그래머스' 카테고리의 다른 글
[JS] 뒤에 있는 큰 수 찾기 (0) | 2023.05.23 |
---|---|
[JS] 무인도 여행 (0) | 2023.05.23 |
[JS] 미로탈출 (0) | 2023.05.20 |
[JS] 혼자서 하는 틱택토 (0) | 2023.05.19 |
[JS] 리코쳇 로봇 (0) | 2023.05.19 |