Cod sursa(job #1386822)

Utilizator rzvrzvNicolescu Razvan rzvrzv Data 13 martie 2015 12:32:40
Problema Heapuri Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.85 kb
#include<cstdio>
#include<set>

using namespace std;

set<pair<int,int> >v;
set<pair<int,int> >::iterator it;
int i,n,op,x,p[200001],nr;

int main()
{
    freopen("heapuri.in","r",stdin);
    freopen("heapuri.out","w",stdout);
    scanf("%d",&n);
    for(i=1;i<=n;i++)
    {
        scanf("%d",&op);
        if(op==1)
        {
            scanf("%d",&x);
            p[++nr]=x;
            v.insert(make_pair(x,nr));
        }
        if(op==2)
        {
            scanf("%d",&x);
            v.erase(make_pair(p[x],x));
        }
        if(op==3)
        {
            /*for(it=v.begin();it!=v.end();it++)
            {
                printf("%d %d ",(*it).first,(*it).second);
            }
            */
            //printf("%d\n");
            it=v.begin();
            printf("%d\n",(*it).first);
        }
    }
}