Pagini recente » Cod sursa (job #1610774) | Cod sursa (job #2958720) | Cod sursa (job #543765) | Cod sursa (job #1872047) | Cod sursa (job #765597)
Cod sursa(job #765597)
#include <fstream>
#include <queue>
#include <bitset>
using namespace std;
#define Smax 300011
ifstream F("heapuri.in");
ofstream G("heapuri.out");
priority_queue< pair<int,int> , vector< pair<int,int> > , greater< pair<int,int> > > H;
bitset<Smax> Delete;
int N,Op,Value,Nbr;
int main()
{
for (F>>N;N;--N)
{
F>>Op;
switch (Op)
{
case 1:
{
F>>Value;
H.push( make_pair(Value,++Nbr) );
break;
}
case 2:
{
F>>Value;
Delete[Value]=1;
break;
}
case 3:
{
while ( Delete[ H.top().second ] ) H.pop();
G<<H.top().first<<'\n';
break;
}
}
}
}