프로그래머스 기능개발

BioBeBE·2022년 6월 24일
0

프로그래머스

목록 보기
4/40

복습필요

문제풀이

큐에 남은 작업 기간 넣기
작업기간 = 작업량/일률

코드

import java.util.Queue;
import java.util.LinkedList;
import java.util.ArrayList;
class Solution {
    public int[] solution(int[] progresses, int[] speeds) {
        Queue<Integer> pQ = new LinkedList<>();
        ArrayList<Integer> result = new ArrayList<>();
        for(int i=0;i<progresses.length;i++){
            pQ.offer((int)Math.ceil((double)(100-progresses[i])/speeds[i]));
        }
        int front = pQ.poll();
        int cnt=1;
        while(!pQ.isEmpty()){
            
        if(front<pQ.peek()){
            result.add(cnt);
            cnt=1;
            front = pQ.poll();
        }else{
            cnt++;
            pQ.poll();
        }
        }
        result.add(cnt);
        
        return result.stream().mapToInt(Integer::intValue).toArray();
    }
}
profile
개발자지망생

0개의 댓글