Pagini recente » Cod sursa (job #540052) | Cod sursa (job #943775) | Cod sursa (job #586664) | Cod sursa (job #164734) | Cod sursa (job #841892)
Cod sursa(job #841892)
#include<stdio.h>
#include<set>
using namespace std;
struct MyStruct {int i,a;};
class MyComp
{
public: inline bool operator()(const MyStruct &x,const MyStruct &y)
{
return x.a<y.a;
}
};
multiset<MyStruct, MyComp> s;
int f[200005];
int main()
{
freopen("heapuri.in","r",stdin);
freopen("heapuri.out","w",stdout);
int n,i,t,a,u=0;MyStruct v;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
scanf("%d",&t);
if(t==1)
{
scanf("%d",&a);
v.a=a;v.i=++u;
f[u]=a;
s.insert(v);
}
else
if(t==2)
{
scanf("%d",&a);
v.a=f[a];v.i=a;
s.erase(v);
}
else
printf("%d\n",s.begin()->a);
}
return 0;
}