【杭电】[1509]Windows Message Queue

来源:互联网 发布:德云社家谱知乎 编辑:程序博客网 时间:2024/06/06 17:13

这里写图片描述
这里写图片描述

优先队列问题
这个是先输出权值较小的那个
与【杭电】[1873]看病要排队类似

#include<stdio.h>#include<queue>using namespace std;struct node {    char s[100];    int k,num,lv;    bool friend operator<(node a,node b) {        if (a.lv==b.lv)            return a.num>b.num;        else            return a.lv>b.lv;    }} a;int main() {    char st[5];    priority_queue<node>q;    int i=0;    while(scanf("%s",st)!=EOF) {        if(st[0]=='G') {            if(q.empty())                printf("EMPTY QUEUE!\n");            else {                a=q.top();                printf("%s %d\n",a.s,a.k);                q.pop();            }        } else {            scanf("%s %d %d",&a.s,&a.k,&a.lv);            a.num=++i;            q.push(a);        }    }    return 0;}

题目地址:【杭电】[1509]Windows Message Queue

0 0
原创粉丝点击