반응형
SMALL
https://programmers.co.kr/learn/courses/30/lessons/42586
import java.util.*;
class Solution {
public int[] solution(int[] progresses, int[] speeds) {
Queue<Integer> queue = new LinkedList<>();
List<Integer> deployList = new ArrayList<>();
for(int i = 0; i < progresses.length; i++) {
int devDays = (int)Math.ceil((double)(100 - progresses[i]) / speeds[i]); // 작업 완료까지 걸리는 일 수 계산
// 큐가 비어있지않고 큐의 맨 앞 수가 현재 구한 일 수(progresses 상 뒤에 것)보다 작으면
if(!queue.isEmpty() && queue.peek() < devDays) {
deployList.add(queue.size()); // 현재 큐에 저장된 개수를 alist에 저장
queue.clear(); // 큐 비우기
}
queue.add(devDays); // 작업 완료까지 걸리는 일 수를 큐에 저장
}
deployList.add(queue.size());
int[] answer = new int[deployList.size()];
int size = 0;
for(int a : deployList)
answer[size++] = a;
return answer;
}
}
반응형
LIST
'JAVA > Algorithm' 카테고리의 다른 글
[프로그래머스/java] 멀쩡한 사각형 (Summer/Winter Coding 2019) + 최대공약수 구하기 (0) | 2020.12.26 |
---|---|
[프로그래머스/java] 주식가격 (0) | 2020.12.25 |
[프로그래머스/java] 프린터 (속도 차이) (0) | 2020.12.23 |
[프로그래머스/java] 비밀지도 (2018 KAKAO BLIND 1차) (0) | 2020.12.18 |
[프로그래머스/java] 예산 (Summer/Winter Coding 2018) (0) | 2020.12.16 |