Pagini recente » Cod sursa (job #219884) | Cod sursa (job #2334371) | Cod sursa (job #1546965) | Cod sursa (job #844836) | Cod sursa (job #944595)
Cod sursa(job #944595)
#include <iostream>
#include <fstream>
#include <algorithm>
#include <vector>
#include <queue>
using namespace std;
vector<int> v(1);
class cmp
{
public:
bool operator() (int a, int b) {
return v[a] > v[b];
}
};
int main()
{
ifstream fin("heapuri.in");
ofstream fout("heapuri.out");
int n;
fin >> n;
priority_queue<int, vector<int>, cmp> a;
for (int nth = 0, i = 1; i <= n; ++i) {
int op, x;
fin >> op;
switch (op) {
case 1: fin >> x;
v.push_back(x);
a.push(++nth);
break;
case 2: fin >> x;
v[x] = 1<<30;
break;
case 3: while (v[a.top()] == 1<<30) a.pop();
fout << v[a.top()] << '\n';
break;
}
}
return 0;
}