본문 바로가기
알고리즘

[프로그래머스] 기능개발 - javascript

by KBS 2022. 2. 14.
728x90

https://programmers.co.kr/learn/courses/30/lessons/42586?language=javascript

 

코딩테스트 연습 - 기능개발

프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100%일 때 서비스에 반영할 수 있습니다. 또, 각 기능의 개발속도는 모두 다르기 때문에 뒤에 있는 기능이 앞에 있는

programmers.co.kr

 

  •  현재 개발이 진행중인 프로그램의 배열이 빌때까지 반복문을 돌아줍니다
  •  개발 속도를 1회 반복할때마다 전부 저해주고, 0번 인덱스의 개발이 완료되었으면 배열에서 제거하고 다시 0번인덱스를 화인하여 0번인덱스의 기능이 개발이 왼료되지 않았을때까지 제거하고 카운트를 더해줍니다.
  •  카운트가 0보다 크다면 정답배열에 카운트를 넣어줍니다.
function solution(progresses, speeds) {
    const answer = [];
    
    while (progresses.length !== 0){
        let count = 0;
        
        for (let i=0; i < progresses.length; i++){
            progresses[i] += speeds[i];
        }
        
        while (progresses.length != 0){
            if (progresses[0] >= 100){
                progresses.shift();
                speeds.shift();
                count += 1;
            } else {
                break;
            }
        }
        
        if (count > 0) {
            answer.push(count)
        }
    }
    
    return answer;
}
728x90

댓글