Pagini recente » Cod sursa (job #1560534) | Cod sursa (job #1466253) | Cod sursa (job #2593739) | Cod sursa (job #166209) | Cod sursa (job #3131055)
//
// Created by Octavian Farcasi on 18.05.2023.
//
#include<iostream>
#include<fstream>
#include<vector>
#include<set>
int main(){
std::ifstream f("heapuri.in");
std::ofstream g("heapuri.out");
int n, operatie, valoare,ok=0;
std::vector<int>ordinea_inserarii; //primesc o pozitie si returnez un element
std::set<int>heap; //heap-ul
// in final conteaza sa tinem cont de ordinea in care inseram si de cel mai mic element
f>>n;
while(n>0){
f>>operatie;
switch (operatie) {
case 1:
f>>valoare;
heap.insert(valoare);
ordinea_inserarii.push_back(valoare);
break;
case 2:
f>>valoare;
heap.erase(ordinea_inserarii[valoare]);
break;
case 3:
if(ok)
g << "\n";
g<<*heap.begin();
ok=1;
break;
}
n--;
}
f.close();
g.close();
return 0;
}