Cod sursa(job #806729)

Utilizator AbinatoreSabin Huiban Abinatore Data 3 noiembrie 2012 12:55:35
Problema Heapuri Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.71 kb
#include <set>
using namespace std;
#include "stdio.h"

int n;
multiset <int> my_set;

int main()
{
	FILE* fIn = fopen("heapuri.in","r");
	FILE* fOut = fopen("heapuri.out","w");
	fscanf(fIn, "%d", &n);
	
	int val1, val2;

	for ( int i=0; i<n; ++i )
	{
		fscanf(fIn, "%d", &val1);
		switch (val1)
		{
		case (1): // inserare
			{
				fscanf(fIn, "%d", &val2);
				my_set.insert(val2);
				break;
			}
		case (2): // stergere
			{
				fscanf(fIn, "%d", &val2);
				my_set.erase(my_set.find(val2));
				break;
			}
		case (3): // afisare minim
			{
				fprintf(fOut, "%d\n", *(my_set.begin()));
				break;
			}
		default:
		break;
		}
	}

	fclose(fIn);
	fclose(fOut);
	return 0;
}