Cod sursa(job #672756)

Utilizator Daniel30daniel Daniel30 Data 3 februarie 2012 01:15:47
Problema Heapuri Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.52 kb
#include<cstdio>
#include<set>
#include<vector>
using namespace std;
#define F(i,exp) for(register int i=0;(exp);++i)
#define Lmax 200001
set< int > h;
vector< int > a;
int n,x,y,nr=0;
int main()
{freopen("heapuri.in","rt",stdin);
 freopen("heapuri.out","wt",stdout);
 scanf("%d",&n);
 F(i,i<n)
  {scanf("%d",&x);
   switch(x)
	{case 1 : scanf("%d",&y);a.push_back(y);nr++;h.insert(y);break;
	 case 2 : scanf("%d",&y);h.erase(a[y-1]);break;
	 case 3 : printf("%d\n",*h.begin()); break; 
	}
   }
 return 0;
}