Cod sursa(job #683079)
Utilizator | Data | 19 februarie 2012 22:16:46 | |
---|---|---|---|
Problema | Heapuri | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.49 kb |
#include<cstdio>
#include<set>
#include<vector>
using namespace std;
#define NMAX 200001
set<int> h;
vector<int> v;
int n,x,y,nr=0;
int main()
{freopen("heapuri.in","rt",stdin); freopen("heapuri.out","wt",stdout);
scanf("%d",&n);
for(register int i=0;i<n;++i)
{scanf("%d",&x);
switch(x)
{case 1 : scanf("%d",&y);v.push_back(y);nr++;h.insert(y);break;
case 2 : scanf("%d",&y);h.erase(v[y-1]);break;
case 3 : printf("%d\n",*h.begin()); break;
}
}
return 0;
}