본문 바로가기

PS/Problems

[Java] 백준 11729번 - 우선순위 큐(Priority Queue)

//우선순위 낮은 순서
PriorityQueue<Integer> priq = new PriorityQueue<>();

//우선순위 높은 순서
PriorityQueue<Integer> priq = new PrioriyQueue<>(Collections.reverseOrder());

 

 

 

 

import java.util.*;
import java.io.*;

public class s2_11279 {
    public static void main(String[] args) throws IOException{
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
        PriorityQueue<Integer> priq = new PriorityQueue<>(Collections.reverseOrder());

        int N = Integer.parseInt(br.readLine());
        for (int i = 0; i < N; i++){
            int temp = Integer.parseInt(br.readLine());
            if (temp == 0){
                if (priq.size() == 0){
                    bw.write(String.valueOf(0));
                }
                else{
                    bw.write(String.valueOf(priq.poll()));
                }
                bw.newLine();
            }
            else{
                priq.add(temp);
            }
        }

        bw.flush();
        bw.close();
    }
}