function solution(progresses, speeds) {
let days = 0;
let map = new Map(); // key: 경과일 values: 배포 갯수
while(progresses.length) {
if(progresses[0] >= 100) { // 과정 완료
// 중복 key set이 불가능한 것을 이용하여 days가 같으면 value 증가.
map.set(days,map.get(days) + 1 || 1);
progresses.shift(); // 완료된 과정 제거
speeds.shift(); // 완료된 작업속도 제거
continue; // 다음작업도 완료됐을 수 있기때문에 하루 경과 일단 무시
}
// 하루마다 각 작업의 스피드를 더해준다.
for (let i = 0; i< progresses.length; i++) {
progresses[i] += speeds[i]
}
days++; // 하루 경과
}
return Array.from(map.values())
}