1927 - 최소 힙

Solution

code

#include <iostream>
#include <queue>
using namespace std;

int main()
{
    ios::sync_with_stdio(false);
    cin.tie(NULL);
    cout.tie(NULL);

    int N;
    cin >> N;
    priority_queue<int, vector<int>, greater<int>> pq;
    for(int i = 0; i < N; i++)
    {
        int num;
        cin >> num;
        if(num == 0 && !pq.empty())
        {
            cout << pq.top() << '\n';
            pq.pop();
        }
        else if(num == 0 && pq.empty()) cout << 0 << '\n';
        else pq.push(num);
    }

    return 0;
}

ref

1927번: 최소 힙