Pagini recente » Cod sursa (job #2670199) | Cod sursa (job #106127) | Borderou de evaluare (job #1379427) | Cod sursa (job #939180) | Cod sursa (job #1959251)
#include <fstream>
#include <queue>
using namespace std;
ofstream fout ("heapuri.out");
ifstream fin ("heapuri.in");
int n,i,a,b,contor;
int v[200005];
priority_queue < pair < int , unsigned int > > q;
int main()
{
fin>>n;
for( i = 1 ; i <= n ; i++ )
{
fin>>a;
if( a == 1 )
{
fin>>b;
contor++;
q.push( make_pair( -b , contor ) );
}
if( a == 2 )
{
fin>>b;
v[ b ] = 1;
}
if( a == 3 )
{
while( v[ q.top().second ] == 1 )
q.pop();
fout<<q.top().first * ( -1 )<<'\n';
}
}
}