FrontEnd/프로그래머스

[JS] 기능개발

728x90

해당 문제 역시 배열이 100개 이하므로 큐 자료구조를 따로 만들지 않고 구현하여 통과하였다.

 

진행도를 충족시킬만큼을 계산한 후, map자료형으로 전체 할일의 진척도를 업데이트 시켜주고, 100 이하의 진척도가 나올때까지 계속 값을 빼주었다.

 

 

function solution(progresses, speeds) {
   
    
    const ret = []
    while (progresses.length) {
        const progress = progresses.shift()
        const speed = speeds.shift()
        
        progresses = progresses.map((v,i) => v + Math.ceil((100 - progress) / speed) * speeds[i] )

        let cnt = 1
        while (progresses[0] >= 100){
            progresses.shift()
            speeds.shift()
            cnt ++
        }
        ret.push (cnt)
    }
    return ret
}
728x90

'FrontEnd > 프로그래머스' 카테고리의 다른 글

[JS] 의상  (0) 2023.07.11
[JS] 다리를 지나는 트럭  (0) 2023.07.11
[JS] 프로세스  (0) 2023.07.07
[JS] 가장 큰 수  (0) 2023.07.07
[JS] H-Index  (0) 2023.07.05