Cod sursa(job #1323879)
Utilizator | Gabriel Vanca gabrielv | Data | 21 ianuarie 2015 16:59:03 |
---|---|---|---|
Problema | Heapuri | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.63 kb |
#include<cstdio>
#include<set>
#define NMAX 200005
using namespace std;
set<int> H;
int Ord[NMAX];
int k;
void insert(int x)
{
H.insert(x);
Ord[++k]=x;
}
void cut(int x)
{
H.erase(Ord[x]);
}
int main()
{
freopen("heapuri.in","r",stdin);
freopen("heapuri.out","w",stdout);
int op,x,m;
scanf("%d",&m);
while(m--)
{
scanf("%d",&op);
if(op==3)
printf("%d\n",*(H.begin()));
else
{
scanf("%d",&x);
if(op==1)
insert(x);
else
cut(x);
}
}
return 0;
}