Pagini recente » Cod sursa (job #1912904) | Cod sursa (job #2725248) | Cod sursa (job #245240) | Cod sursa (job #48310) | Cod sursa (job #1172708)
#include <fstream>
#include <queue>
#include <vector>
using namespace std;
typedef pair<int, int> pii;
const int Nmax = 222222;
char este[Nmax];
priority_queue<pii, vector<pii>, greater<pii>> Q;
int main()
{
ifstream f ("heapuri.in");
ofstream g ("heapuri.out");
int N, op, x, ord = 1;
f >> N;
while(N--)
{
f >> op;
switch (op) {
case 1: f >> x;
este[ord] = 1;
Q.push(make_pair(x, ord));
ord++;
break;
case 2: f >> x;
este[x] = 0;
break;
case 3: while(!este[Q.top().second])
Q.pop();
g << Q.top().first << '\n';
}
}
return 0;
}