Cod sursa(job #3151331)

Utilizator Federica361Martinut Federica Federica361 Data 20 septembrie 2023 18:28:40
Problema Heapuri Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.68 kb
#include <bits/stdc++.h>

using namespace std;

ifstream fin("heapuri.in");
ofstream fout("heapuri.out");

#define cin fin
#define cout fout

priority_queue<pair<int, int>> pq;

pair<int, int> p;

int n,i,j,cod,a,eliminare[200005];
int main()
{
    cin>>n;
    for(i=1;i<=n;i++)
    {
        cin>>cod;
        if(cod==1)
        {
            j++;
            cin>>a;
            pq.push({-a,j});
        }
        else if(cod==2)
        {
            cin>>a;
            eliminare[a]=1;
        }
        else
        {
            while(!pq.empty() && eliminare[pq.top().second]==1) pq.pop();
            cout<<-pq.top().first<<"\n";
        }
    }
}