Pagini recente » Cod sursa (job #1845274) | Cod sursa (job #3005706) | Cod sursa (job #2649586) | Cod sursa (job #2682165) | Cod sursa (job #3201646)
#include <fstream>
#include <vector>
#include <algorithm>
using namespace std;
ifstream fin("heapuri.in");
ofstream fout("heapuri.out");
vector<pair<int,int>>V;
void solve();
int main(){
solve();
fin.close();
fout.close();
return 0;
}
void solve(){
int n,x,y,nr=0;
fin>>n;
for(int i=1;i<=n;++i){
make_heap(V.begin(),V.end(),greater<pair<int,int>>());
fin>>x;
if(x==3){
fout<<V.front().first<<'\n';
continue;
}
if(x==1){
fin>>y;
V.push_back({y,++nr});
push_heap(V.begin(),V.end());
continue;
}
fin>>y;
for(int i=0;i<V.size();++i){
if(V[i].second==y){
V.erase(V.begin()+i);
}
}
make_heap(V.begin(),V.end(),greater<pair<int,int>>());
}
}