728x90
우선순위 큐에 대한 개념이 필요한 문제
Integer에 대해서 오름차순으로 자동정렬되는 것만 알면 쉬움
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | import java.util.*; class Solution { public int solution(int[] scoville, int K) { PriorityQueue<Integer> pq = new PriorityQueue<Integer>(); int answer = 0; for(int i: scoville) pq.add(i); while(true){ if(pq.peek()>=K) break; if(pq.size()==1) return -1; else { pq.add(pq.poll() + (pq.poll())*2); answer++; } } return answer; } } |
참고 : https://developerdk.tistory.com/20
'알고리즘 풀이 > 프로그래머스' 카테고리의 다른 글
[프로그래머스][Java] 전화번호 목록 (0) | 2019.04.03 |
---|---|
[프로그래머스][Java] 큰 수 만들기 (0) | 2019.03.22 |
[프로그래머스][Java] 쇠막대기 (0) | 2019.03.22 |
[프로그래머스][Java] 프린터 (0) | 2019.03.20 |
[프로그래머스][Java] 다리를 지나는 트럭 (1) | 2019.03.16 |