728x90
반응형
https://programmers.co.kr/learn/courses/30/lessons/42628?language=java
import java.util.*;
class Solution {
public int[] solution(String[] operations) {
int[] answer = {0, 0};
PriorityQueue<Integer> minq = new PriorityQueue();
PriorityQueue<Integer> maxq = new PriorityQueue(Comparator.reverseOrder());
for(String s : operations){
String[] temp = s.split(" ");
if(temp[0].equals("I")){
minq.offer(Integer.parseInt(temp[1]));
maxq.offer(Integer.parseInt(temp[1]));
} else if(minq.isEmpty()){
continue;
} else if(temp[1].equals("1")){
int max = maxq.peek();
minq.remove(max);
maxq.remove(max);
} else {
int min = minq.peek();
minq.remove(min);
maxq.remove(min);
}
}
if(!minq.isEmpty()){
answer[0] = maxq.poll();
answer[1] = minq.poll();
}
return answer;
}
}
728x90
반응형
'알고리즘' 카테고리의 다른 글
[프로그래머스/Java] 가장 큰 수 (0) | 2022.01.17 |
---|---|
[프로그래머스/JAVA] K번째 수 (0) | 2022.01.12 |
[프로그래머스/JAVA] 더 맵게 (0) | 2021.12.30 |
[프로그래머스/JAVA] 주식가격 (0) | 2021.12.28 |
[프로그래머스/JAVA] 기능개발(스택/큐) (0) | 2021.12.27 |