csct3434
[level 3] 이중우선순위큐 - 42628 본문
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
import java.util.*;
class Solution {
public int[] solution(String[] operations) {
PriorityQueue<Integer> ascPriorityQueue = new PriorityQueue<>();
PriorityQueue<Integer> descPriorityQueue = new PriorityQueue<>(Comparator.reverseOrder());
for (String op : operations) {
String[] tokens = op.split(" ");
String command = tokens[0];
int value = Integer.parseInt(tokens[1]);
if (command.equals("I")) {
ascPriorityQueue.add(value);
descPriorityQueue.add(value);
continue;
}
if (ascPriorityQueue.isEmpty()) {
continue;
}
if (value < 0) {
descPriorityQueue.remove(ascPriorityQueue.poll());
} else {
ascPriorityQueue.remove(descPriorityQueue.poll());
}
}
return ascPriorityQueue.isEmpty() ? new int[]{0, 0} : new int[]{descPriorityQueue.poll(), ascPriorityQueue.poll()};
}
}
'프로그래머스' 카테고리의 다른 글
[level 3] 단속카메라 - 42884 (0) | 2024.03.17 |
---|---|
[level 3] 섬 연결하기 - 42861 (0) | 2024.03.17 |
[level 3] 디스크 컨트롤러 - 42627 (0) | 2024.03.17 |
[level 3] 베스트앨범 - 42579 (0) | 2024.03.17 |
[level 2] 시소 짝꿍 - 152996 (0) | 2024.03.07 |