[프로그래머스] 기능개발-스택/큐 Level2 (자바,java)

[프로그래머스] 기능개발-스택/큐 Level2 (자바,java)

- 풀이

큐와 리스트를 만들어주고 progresses i번째 숫자가 100이상이 될때까지 카운트하여 tmp에 저장한다.

progresses의 모든 배열에 tmp*speeds 를 곱해준다.

progresses i번째가 100이상이라면 while문을 통해 큐에 넣어주고 i를 증가시킨다.

큐에 갯수를 카운팅하여 리스트에 넣어준다.

import java.io.IOException; import java.util.ArrayList; import java.util.LinkedList; import java.util.Queue; class Solution { public static int[] solution(int[] progresses, int[] speeds) { int[] answer = {}; Queue q = new LinkedList<>(); ArrayList list = new ArrayList<>(); for (int i=0; i=100) { q.offer(progresses[i++]); } i--; int cnt=0; while (!q.isEmpty()) { q.poll(); cnt++; } list.add(cnt); } answer= list.stream().mapToInt(Integer::intValue).toArray(); return answer; } }

너무 복잡하게 짠거같다.. 다음에는 더 간결하게 짜보자

from http://rotomoo.tistory.com/25 by ccl(A) rewrite - 2021-11-03 03:01:59