✍ 나의 풀이
function solution(progresses, speeds) {
let rest = progresses.map(v => 100 - v)
let day = rest.map((v, i) => Math.ceil(v / speeds[i]))
let answer = []
let count = 1
let prev = day[0]
for(let i = 1; i < day.length; i++){
if(day[i] <= prev){
count++
} else {
answer.push(count)
prev = day[i]
count = 1
}
}
answer.push(count)
return answer
}
- 100과 profresses의 각 요소의 차를 rest라는 배열에 할당
- rest의 각 요소에 대응되는 speeds의 요소를 나눠준 후, 절대올림을 통해 도출된 소요기간을 day라는 배열에 할당
- 배열 day의 첫요소를 prev 변수에 할당하여, 순차적으로 비교
- 마지막 인덱스 요소의 count는 for문이 끝난 시점에 push