Pagini recente » Cod sursa (job #412973) | Cod sursa (job #1949170) | Cod sursa (job #2968394) | Cod sursa (job #1094938) | Cod sursa (job #2805893)
#include <iostream>
#include <fstream>
#include <vector>
#include <queue>
using namespace std;
ifstream fin("heapuri.in");
ofstream fout("heapuri.out");
int n, q, val, k, ind, del[200010];
priority_queue<pair<int, int>> heap;
int main()
{
fin >> n;
for(int i = 1; i <= n; i++)
{
fin >> q;
if(q == 1)
{
fin >> val;
k++;
heap.push(make_pair(-val, k));
}
else if (q == 2)
{
fin >> ind;
del[ind] = 1;
}
else
{
while(del[heap.top().second])
heap.pop();
fout << -heap.top().first << "\n";
}
}
return 0;
}