Cod sursa(job #545186)

Utilizator PatrunjeluMarginean Bogdan Alexandru Patrunjelu Data 2 martie 2011 21:00:39
Problema Heapuri Scor 40
Compilator cpp Status done
Runda Arhiva educationala Marime 0.75 kb
#include <set>
#include <stdio.h>
using namespace std;

multiset<int> multime;
int n;
int tip; int numar;
int history[200010];
int historyStep = 0;

int main()
{
    freopen("heapuri.in", "r", stdin);
    freopen("heapuri.out", "w", stdout);
    scanf("%d", &n);
    multiset<int>::iterator it;
    int locatie;
    for (int i = 0; i < n; i++)
    {
        scanf("%d", &tip);
        switch(tip)
        {
            case(1): scanf("%d", &numar); historyStep++; history[historyStep] = numar; multime.insert(numar); break;
            case(2): scanf("%d", &numar); multime.erase(history[numar]); break;
            case(3): it = multime.begin(); printf("%d\n", *it); break;
            default:break;
        }
    }
    return 0;
}