카페 확장
Lv. 2
Solution
export function expandCafe(menu: number[], order: number[], k: number) {
let answer = 1;
let currentTime = 0;
const queue: number[] = [];
for (let i = 0; i < order.length; i++) {
const lastOrder =
queue.length === 0 ? currentTime : Math.max(currentTime, queue[queue.length - 1]);
queue.push(lastOrder + menu[order[i]]);
while (0 < queue.length && queue[0] <= currentTime) {
queue.shift();
}
currentTime += k;
answer = Math.max(answer, queue.length);
}
return answer;
}