Pagini recente » Cod sursa (job #1094991) | Cod sursa (job #2734969) | Cod sursa (job #1998200) | Cod sursa (job #2486343) | Cod sursa (job #1824779)
#include <fstream>
#include <vector>
#include <algorithm>
using namespace std;
ifstream in("heap.in");
ofstream out("heap.out");
int main() {
int k;
vector<int> v, z;
in >> k;
for(int i = 0; i < k; i++) {
int x;
in >> x;
if(x == 1) {
int y;
in >> y;
v.push_back(y);
z.push_back(y);
}
else if(x == 2) {
int a;
in >> a;
a--;
v.erase(find(v.begin(), v.end(), z[a]));
z.erase(find(z.begin(), z.end(), z[a]));
}
else {
make_heap(v.begin(), v.end());
out << v.back() << '\n';
}
}
return 0;
}