Pagini recente » Cod sursa (job #3273881) | Cod sursa (job #976169) | Cod sursa (job #3188329) | Cod sursa (job #699945) | Cod sursa (job #2658156)
#include <bits/stdc++.h>
using namespace std;
priority_queue <int, vector<int>, greater<int>> q;
map <int, int> toElim;
int lista[200001], vf;
ifstream in("heapuri.in");
ofstream out("heapuri.out");
int n;
int main()
{
in >> n;
for(int c, val; n; n--)
{
in >> c;
switch(c)
{
case 1:
in >> val;
lista[++vf] = val;
q.push(val);
break;
case 2:
in >> val;
toElim[lista[val]]++;
break;
case 3:
while(toElim[q.top()])
{
toElim[q.top()]--;
q.pop();
}
out << q.top() << '\n';
break;
}
}
return 0;
}