Pagini recente » Cod sursa (job #1595443) | Cod sursa (job #2393767) | Cod sursa (job #317658) | Cod sursa (job #298161) | Cod sursa (job #2526153)
#include <fstream>
#include <queue>
using namespace std;
ifstream f("heapuri.in"); ofstream g("heapuri.out");
typedef pair<int, int> pi;
vector <int> v;
priority_queue<pi, vector<pi>, greater<pi> > q;
const long long inf =(1<<30);
int main()
{ int n,el=0;
f>>n;
for (int operatie,i=1; i<=n; i++)
{ f>>operatie;
switch (operatie)
{ case 1: int e;
f>>e;
v.push_back(e);
q.push(make_pair(e, el));
el++;
break;
case 2: f>>e;
v[e-1]=inf;
break;
default: while (v[q.top().second]==inf) q.pop();
g<<q.top().first<<"\n";
break;
}
}
return 0;
}