diesuki4 2023. 2. 27. 09:39
11279. 최대 힙

 

 

우선순위 큐의 사용법을 묻는 간단한 문제였다.

 

#include <iostream>
#include <queue>
#include <sstream>

using namespace std;
using uint = unsigned int;

int main(int argc, char* argv[])
{
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    cout.tie(NULL);

    int N;
    priority_queue<uint> prque;
    ostringstream oss;

    cin >> N;

    while (N--)
    {
        uint num;
        cin >> num;

        if (num)
        {
            prque.emplace(num);
        }
        else if (prque.empty())
        {
            oss << 0 << "\n";
        }
        else
        {
            oss << prque.top() << "\n";
            prque.pop();
        }
    }

    cout << oss.str();

    return 0;
}