stl priority

#include <stdio.h>
#include
<string.h>
#include
<queue>
#include
<stdlib.h>
#include
<iostream>

using namespace std;

struct node1 {
int k;
int p;
bool operator < ( const node1 &A ) const
{
return p < A.p;
}
}ND1;


priority_queue
<node1>q1;

void add( )
{
scanf(
"%d%d",&ND1.k, &ND1.p);
q1.push(ND1);
//q2.push(ND2);
}

void show_max( )
{
int t;
if (q1.empty( )) {
puts(
"0");
return;
}
t
= q1.top().k;
printf(
"%d\n",t);
q1.pop( );
}

int main( )
{
int N;
while (scanf("%d", &N), N)
{
switch ( N )
{
case 1 : add( );break;
case 2: show_max( );break;
}
}
return 0;
}

posted on 2011-07-29 11:49  more think, more gains  阅读(142)  评论(0编辑  收藏  举报

导航