Pagini recente » Cod sursa (job #257322) | Cod sursa (job #3266907) | Cod sursa (job #2530884) | Cod sursa (job #2559237) | Cod sursa (job #870604)
Cod sursa(job #870604)
#include<fstream>
#include<vector>
#include<queue>
#include<algorithm>
using namespace std;
ifstream in("heapuri.in");
ofstream out("heapuri.out");
struct cmp
{
bool operator() (const pair<int,int> &a,const pair<int,int> &b)
{
return (a.first>b.first);
}
};
int ok[200001],a[200001],i,t,x,y,nr;
priority_queue<pair<int,int> , vector< pair<int,int> >,cmp> Q;
int main()
{
in>>t;
for (i=1;i<=t;i++)
{
in>>x;
if (x==1)
{
in>>a[++nr];
Q.push(make_pair(a[nr],nr));
}
if (x==2)
{
in>>y;
ok[y]=1;
}
if (x==3)
{
while (ok[Q.top().second]) Q.pop();
out<<Q.top().first<<'\n';
}
}
}