Cod sursa(job #2610695)

Utilizator tavi255Varzaru Octavian Stefan tavi255 Data 5 mai 2020 14:45:56
Problema Heapuri Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.68 kb
//#include <iostream>
#include <queue>
#include <fstream>
using namespace std;

const int Max=200005;

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

int n; bool inheap[Max];
priority_queue < pair <int,int > ,vector < pair < int,int > > , greater <pair <int,int > > >pq;
int main()
{
    in>>n; int val=0,x,op;
    for(int i=1;i<=n;i++)
    {
       in>>op;
       if(op==1 || op==2)
        in>>x;
       if(op==1)
       pq.push({x,++val});
       else if(op==2)
        inheap[x]=1;
        else
        {
            while(inheap[pq.top().second])
                pq.pop();
            out<<pq.top().first<<"\n";
        }

    }
    return 0;
}