Cod sursa(job #411588)

Utilizator robertzelXXX XXX robertzel Data 4 martie 2010 23:35:17
Problema Heapuri Scor 40
Compilator cpp Status done
Runda Arhiva educationala Marime 0.64 kb
#include <iostream>
#include <set>
#include <vector>
#define MAX_N 200010

using namespace std;

int n;
vector<int> o;
multiset<int> a;

int main () {
	int x,y,i;
	
	freopen("heapuri.in", "r", stdin);
	freopen("heapuri.out", "w", stdout);
	
	scanf("%d", &n);
	
	for (i=0; i<n; i++) {
		scanf("%d", &x);
		
		if (x == 1) {
			//se ins el x in multime
			scanf("%d", &y);
			a.insert(y);
			o.push_back(y);
			
		} else if (x == 2) {
			//se sterge elem intrat al xulea in multime
			scanf("%d", &y);
			a.erase(a.find(o[y-1]));
			
		} else {
			//se aff el min
			printf("%d\n", *a.begin());
		}
	}
	
	return 0;
}