본문 바로가기
알고리즘

[프로그래머스/자바스크립트] 스택/큐_기능개발

2021. 11. 9.

https://programmers.co.kr/learn/courses/30/lessons/42586

 

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

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

programmers.co.kr

function solution(progresses, speeds) {
  // {'기능 번호': 필요작업일수} 형식으로 객체 만들기
  var days = {};
  for (var i = 0; i < progresses.length; i++) {
    days[i] = Math.ceil((100 - progresses[i]) / speeds[i]);
  }

  //현재까지의 소요 일수와 각 기능별 필요작업일수를 비교해서 배포 기능 개수 세기
  var arrayOfDays = Object.values(days);
  var idx = 0;
  var result = [];

  //모든 기능이 다 완성될 때까지 while 문 순회
  while (idx < progresses.length) {
    var release = 0;
    var spentDays = arrayOfDays[idx];
    idx++;
    release++;
    while (spentDays >= arrayOfDays[idx]) {
      idx++;
      release++;
    }
    result.push(release);
  }
  return result;
}

 

댓글