Cod sursa(job #3163295)

Utilizator laura2020Moldovan Laura laura2020 Data 31 octombrie 2023 10:56:25
Problema Heapuri Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.81 kb
#include <iostream>
#include <fstream>
#include <queue>
#include <vector>

using namespace std;

ifstream fin("heapuri.in");
ofstream fout("heapuri.out");
//Varianta cu priority_queue
vector<int> v;
priority_queue<int,vector<int>,greater<int>> pq1,pq2;

int main()
{
    int n,i,op,x;
    fin>>n;
    v.resize(1);
    for(i=0;i<n;i++)
    {
        fin>>op;
        if(op==1)
        {
            fin>>x;
            pq1.push(x);
            v.push_back(x);
        }
        else if(op==2)
        {
            fin>>x;
            pq2.push(v[x]);
        }
        else
        {
            while(!pq2.empty() && pq2.top()==pq1.top())
            {
                pq1.pop();
                pq2.pop();
            }
            fout<<pq1.top()<<'\n';
        }
    }
    return 0;
}