Cod sursa(job #357897)

Utilizator allynaAlina S allyna Data 21 octombrie 2009 00:07:01
Problema Heapuri Scor 40
Compilator cpp Status done
Runda Arhiva educationala Marime 0.61 kb
#include <stdio.h>
#define D 200020
int a[D],heap[D],minim,n,k;
inline void insert()
{
	int x;
	scanf("%d",&x);
	a[++k] = x;
	if (minim>x) minim=x;
}
inline void del()
{
	int x, i;
	scanf("%d ", &x);
	heap[x]=1;
	if (a[x]==minim)
	{
		minim=9000000;
		for (i=1;i<=k;i++)
			if (minim>a[i]&&heap[i]==0) minim=a[i];
	}
}
int main()
{
	freopen("heapuri.in","r",stdin);
	freopen("heapuri.out","w",stdout);
	int i,op;
	scanf("%d",&n);
	minim=9000000;
	for (i=1;i<=n;i++)
	{
		scanf("%d",&op);
		if (op==1) insert();
		if (op==2) del();
		if (op==3) printf("%d\n",minim);
	}
	return 0;
}