기능개발

108번뇌·2020년 9월 27일
0

풀었음.

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


class Solution {
    public List<Integer> solution(int[] progresses, int[] speeds) {
        List<Integer> answerArray = new ArrayList<>();
        Queue<Integer> queue = new LinkedList<>();
        for(int i=0; i<progresses.length; i++)
        {
            int cal = (100 - progresses[i]) % speeds[i];
            if(cal == 0)
            {
                progresses[i] = (100 - progresses[i]) / speeds[i];
            }
            else
            {
                progresses[i] = (100 - progresses[i]) / speeds[i] + 1;
            }
        }

        int temp = 0;
        temp++;
        for(int i=0; i<progresses.length; i++)
        {
            if(queue.isEmpty())
            {
                queue.add(progresses[i]);
                continue;
            }
            if(queue.peek() < progresses[i])
            {
                queue.poll();
                queue.add(progresses[i]);
                answerArray.add(temp);
                temp = 0;
            }
            temp++;
            if(i == progresses.length-1)
            {
                answerArray.add(temp);
            }
        }


        return answerArray;
    }
}
profile
내일 아침 눈을 떳을 때, '기대되는 오늘 하루를 만들기 위해' 나는 오늘도 생각하고 고민한다.

0개의 댓글