Cod sursa(job #2901410)

Utilizator David0911David Teregovan David0911 Data 13 mai 2022 17:54:07
Problema Heapuri Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 1.51 kb
#include <bits/stdc++.h>

using namespace std;
ifstream fin("heapuri.in");
ofstream fout("heapuri.out");
int n, p, x, mini = 1e6, y = 0;
vector<int> v;


set<int>heap;
int main()
{
    fin >> n;
    /*
    40 puncte -> Complexitatea N^2
    while(n--)
    {
        fin >> p;
        mini = 1e6;
        if(p == 1)
        {
            fin >> x;
            v.push_back({x, y});
            y++;
        }
        else if(p == 2)
        {
            fin >> x;
            int j;
            for(int i = 0; i < v.size(); i++)
            {
                if(x == v[i].second)
                {
                    j = i;
                    break;
                }
            }
            v.erase(v.begin() + j);

        }
        else
        {
            for(int i = 0; i < v.size(); i++)
            {
                if(mini > v[i].first)
                    mini = v[i].first;
            }

            fout << mini << '\n';
        }
        for(int i = 0; i < v.size(); i++)
            cout << v[i].first << " ";
        cout << endl;

        cout << p;
        cout << endl

    }*/
    while(n--)
    {
        fin >> p;
        if(p == 1)
        {
            fin >> x;
            heap.insert(x);
            v.push_back(x);
        }
        else if(p == 2)
        {
            fin >> x;
            heap.erase(v[x - 1]);
        }
        else
        {
            fout << *(heap.begin()) <<  '\n';
        }
    }
    return 0;
}