728x90
/**
* @params progresses 먼저 배포되어야 하는 순서대로 작업의 진도가 적힌 정수 배열
* @params speeds 각 작업의 개발 속도가 적힌 정수 배열 speeds
*/
function solution(progresses, speeds) {
let answer = [];
let progressesStack = [...progresses];
let len = progresses.length;
let days = 0; //경과일
for(let i=0; i<len; i++) {
//경과시간에 따른 진도율 더하기
let progres = progressesStack[i] + speeds[i]*days;
//100 이상일 경우 완료 갯수 추가
if(99 < progres) {
if(0 < answer.length) {
answer[answer.length-1]++;
} else {
answer.push(1);
}
} else {
answer.push(1);
//100 미만일 경우 하루 추가
while(100 > progres) {
progres += speeds[i]; //100이상이 될때까지 더함.
days++; //하루가 지남.
}
}
}
return answer;
}
728x90
'Study Note > Algorithm' 카테고리의 다른 글
프로그래머스 #정렬 - K번째수 lv1 (0) | 2021.01.20 |
---|---|
프로그래머스 #해시 - 베스트앨범 lv3 (0) | 2021.01.16 |
프로그래머스 #해시 - 위장 lv2 (0) | 2021.01.10 |
프로그래머스 #해시 - 완주하지 못한 선수 lv1 (1) | 2020.10.16 |
Algorithm #순열 알고리즘 (0) | 2019.08.19 |
댓글