Pagini recente » Cod sursa (job #2693089) | Cod sursa (job #2233487) | Cod sursa (job #2971196) | Cod sursa (job #2562717) | Cod sursa (job #3163600)
#include <iostream>
#include <fstream>
#include <queue>
#include <vector>
#define nmax 200000
using namespace std;
priority_queue <int, vector<int>, greater<int> > pq, pqelim;
int v[nmax];
int main()
{
int n, i, t, x, nrv = 0;
ifstream cin("heapuri.in");
ofstream cout("heapuri.out");
cin >> n;
for( i = 0; i < n; i++ ) {
cin >> t;
if( t == 1 ) {
cin >> v[++nrv];
pq.push( v[nrv] );
} else if( t == 2 ) {
cin >> x;
pqelim.push(v[x]);
} else {
while( pqelim.size() > 0 && pqelim.top() == pq.top() ) {
pqelim.pop();
pq.pop();
}
cout << pq.top() << "\n";
}
}
return 0;
}