Pagini recente » Cod sursa (job #2981004) | Istoria paginii runda/oni2009/clasament | Rating Diana Simion (djana) | Cod sursa (job #2090504) | Cod sursa (job #2746973)
#include <fstream>
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
ifstream fin("heapuri.in");
ofstream fout("heapuri.out");
vector <int> v;
int indice(int val){
for(int i=0;i<v.size();i++)
if(val==v[i])
return i;
return 0;
}
int n,x,t,nr,index,aux[200001];
int main()
{
fin>>n;
for(int i=0;i<n;i++){
fin>>t;
if(t==1){
fin>>x;
nr++;
aux[nr]=-x;
v.push_back(-x);
push_heap(v.begin(), v.end());
}
if(t==2){
fin>>x;
index=indice(aux[x]);
swap(v[index],v[v.size()-1]);
v.pop_back();
make_heap(v.begin(), v.end());
}
if(t==3){
fout<<-v.front()<<'\n';
}
}
}