Pagini recente » Borderou de evaluare (job #3302714) | Borderou de evaluare (job #3317011) | Borderou de evaluare (job #3303292) | Borderou de evaluare (job #3303298) | Cod sursa (job #3333433)
#include <bits/stdc++.h>
using namespace std;
priority_queue<int>pq;
map<int,int>m;
int v[200005];
int main()
{
ifstream cin("heapuri.in");
ofstream cout("heapuri.out");
int n,a,curr=0,tip;
cin>>n;
for(int i=0; i<n; i++)
{
cin>>tip;
if(tip==1)
{
curr++;
cin>>v[curr];
pq.push(-v[curr]);
m[v[curr]]++;
}
else if(tip==2)
{
cin>>a;
m[v[a]]--;
}
else
{
while(pq.size()>0&&m[-(pq.top())]<1)
pq.pop();
cout<<-pq.top()<<'\n';
}
}
return 0;
}