Pagini recente » Cod sursa (job #281024) | Cod sursa (job #556007) | Cod sursa (job #2856210) | Cod sursa (job #2758207) | Cod sursa (job #1098417)
/*
Folosim un multiset pentru a simula un heap
Sunt permise opreatii de inserare,stergere a unui element si afisarea minimului
*/
#include <fstream>
#include <algorithm>
#include<vector>
#include<set>
using namespace std;
int n,m,x,y,aux,cost,caz,i,v[200010],k;
ifstream fin("heapuri.in");
ofstream fout("heapuri.out");
multiset<int>heap;
int main()
{
fin>>n;
for(i=1;i<=n;i++)
{
fin>>caz;
if(caz==1)
{
fin>>x;
v[++k]=x;
heap.insert(x);
}
if(caz==2)
{
fin>>x;
heap.erase(heap.find(v[x]));
}
if(caz==3)
{
multiset<int>::iterator it;
it=heap.begin();
fout<<*it<<"\n";
}
}
for(i=1;i<=k;i++)
{
// fout<<v[i]<<" ";
}
/*for(it=heap.begin();it!=heap.end();it++)
{
fout<<*it<<" ";
}*/
}