Cod sursa(job #1089660)

Utilizator pulseOvidiu Giorgi pulse Data 21 ianuarie 2014 20:42:44
Problema Heapuri Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
#include <cstdio>
#include <vector>
#include <set>

using namespace std;

int n;
vector <int> numbers;
multiset <int> heap;

int main ()
{
	freopen ("heapuri.in", "r", stdin);
	freopen ("heapuri.out", "w", stdout);
	numbers.push_back (0);
	scanf ("%d", &n);
	for (int i = 1, type, val; i <= n; ++i)
	{
		scanf ("%d", &type);
		if (type == 3)
			printf ("%d\n", *heap.begin ());
		else
		{
			scanf ("%d", &val);
			if (type == 1)
			{
				heap.insert (val);
				numbers.push_back (val);
			}
			else
				heap.erase (numbers[val]);
		}
	}
	return 0;
}