Cod sursa(job #2727756)

Utilizator emanuel2186Lugojan Emanuel emanuel2186 Data 22 martie 2021 14:27:38
Problema Heapuri Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.9 kb
#include <bits/stdc++.h>
using namespace std;
ifstream fin("heapuri.in");
ofstream fout("heapuri.out");
/**

operatia de tipul 1: se insereaza elementul x in multime
operatia de tipul 2: se sterge elementul intrat al x-lea in multime, in ordine cronologica
operatia de tipul 3: se afiseaza elementul minim din multime

*/
multiset<int> heap;
vector<int>v;
int n, cer;
void citire()
{
    fin>>n;
    int x;
    for(int i=1; i<=n; i++)
    {
        fin>>cer;
        if(cer == 3)
        {
            fout<<(*heap.begin())<<"\n";
        }
        else
        {
            fin>>x;
            if(cer == 1)
            {
                heap.insert(x);
                v.push_back(x);
            }
            else
            {
                int val = v[x - 1];
                heap.erase(val);
            }
        }
    }
}
int main()
{
    citire();
    return 0;
}