Pagini recente » Cod sursa (job #227411) | Cod sursa (job #317058) | Cod sursa (job #2682145) | Cod sursa (job #3176827) | Cod sursa (job #603970)
Cod sursa(job #603970)
#include <cstdio>
#include <set>
using namespace std;
int n, tip, x, nh=0,v[200010];
multiset <int, less<int> > heap;
int main(){
freopen("heapuri.in","r",stdin);
freopen("heapuri.out","w",stdout);
scanf("%d\n",&n);
for (int i=1;i<=n;i++){
scanf("%d", &tip);
if (tip==3) printf("%d\n",*heap.begin()),scanf("\n");
if (tip==1) {scanf("%d\n",&x);heap.insert(x);++nh;v[nh]=x;}
if (tip==2) {scanf("%d\n",&x);multiset <int, less<int> >::iterator it;it=heap.find(v[x]);heap.erase(it);}
}
return 0;
}