https://www.acmicpc.net/problem/1927
문제
풀이
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.parseInt(br.readLine());
PriorityQueue<Integer> sortedNumbers = new PriorityQueue<>();
for(int i = 0; i < n; i++){
int x = Integer.parseInt(br.readLine());
if(x == 0){
if(sortedNumbers.isEmpty()){
System.out.println(0);
}else{
System.out.println(sortedNumbers.poll());
}
}else{
sortedNumbers.offer(x);
}
}
}
}
숫자의 입력과 정렬을 동시에 진행하며 들어온 숫자가 0일 경우에만 큐의 상태를 확인하고 0을 출력해주거나 최소값을 출력해주면 된다.
'문제 풀이 > 백준' 카테고리의 다른 글
[백준] 11286번. 절댓값 힙 (JAVA) (0) | 2024.02.06 |
---|---|
[백준] 11279번. 최대 힙 (JAVA) (1) | 2024.02.06 |
[백준] 2841번. 외게인의 기타 연주 (JAVA) (0) | 2024.02.06 |
[백준] 1935번. 후위 표기식2 (JAVA) (0) | 2024.02.06 |
[백준] 3986번. 좋은 단어 (1) | 2024.02.05 |