Pagini recente » Cod sursa (job #1572799) | Cod sursa (job #2205845) | Istoria paginii runda/leitentw1/clasament | Cod sursa (job #1062089) | Cod sursa (job #1377091)
#include <iostream>
#include <vector>
#include <algorithm>
#include <fstream>
#include <list>
using namespace std;
ifstream f("heapuri.in");
ofstream g("heapuri.out");
vector<int> v;
int main()
{
int n;
f>>n;
for(int i=0;i<n;++i)
{
int c,x;
int e=0;
f>>c;
if(c==1)
{
f>>x;
v.push_back(x);
}
else if(c==2)
{
f>>x;
e++;
v.erase(v.begin()+x-1-e);
}
else
{
vector<int> h(v.begin(), v.end());
make_heap(h.begin(), h.end(), greater<int> ());
cout<<*(h.begin())<<"\n";
}
}
}