Pagini recente » Cod sursa (job #958241) | Cod sursa (job #375835) | Cod sursa (job #3271837) | Cod sursa (job #504059) | Cod sursa (job #1584895)
#include <fstream>
#include <queue>
using namespace std;
ifstream fin("heapuri.in");
ofstream fout("heapuri.out");
struct nr
{
int val,poz;
}pas;
struct cmp
{
bool operator ()(const nr &a,const nr &b)
{
return a.val>b.val;
}
};
priority_queue<nr,vector<nr>,cmp> Q;
bool uz[200001];
int main()
{
int m,i,j,a,x=0;
fin>>m;
for(i=1;i<=m;i++)
{
fin>>a;
if(a==1)
{
fin>>j;
x++;
pas.val=j;pas.poz=x;
Q.push(pas);
}
if(a==2)
{
fin>>j;
uz[j]=1;
}
if(a==3)
{
while(uz[Q.top().poz]!=0) Q.pop();
fout<<Q.top().val<<"\n";
}
}
}