Cod sursa(job #2614190)

Utilizator FLORENTIN-GIULIANO.DUMITRUDumitru Florentin Giuliano FLORENTIN-GIULIANO.DUMITRU Data 11 mai 2020 13:35:13
Problema Heapuri Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 1.07 kb
#include <fstream>
#include <queue>
#include <unordered_map>
using namespace std;
ifstream in("heapuri.in");
ofstream out("heapuri.out");

priority_queue < int, vector <int>, greater <int> > coada;
unordered_map<int,bool> ver;

int main()
{
    int n, i = 1;
    in >> n;
    int a[n+1];
    int partial = n;
    while (partial --){
        int op, val;
        in >> op;
        switch (op) {
            case 1:
                in >> val;
                a[i] = val;
                ver[val] = true;
                coada.push(val);
                i ++;
                break;
            case 2:
                in >> val;
                ver[a[val]] = false;
                break;
            case 3:
                while (!ver[coada.top()]){
                    coada.pop();
                    if (!coada.size())
                        break;
                }
                if (coada.size())
                    out << coada.top() << "\n";
                ///coada.pop();
        }
    }
    in.close();
    out.close();
    return 0;
}