HDU 5349(2015多校5)-MZL's simple problem(优先队列)

来源:互联网 发布:软件协会会员牌匾 编辑:程序博客网 时间:2024/04/29 18:30

题目地址:HDU 5349
很水的优先队列就能搞好,只不过注意如果2操作结束后的队列为空,那么Max的值为-inf。

#include <stdio.h>#include <math.h>#include <string.h>#include <stdlib.h>#include <iostream>#include <sstream>#include <algorithm>#include <set>#include <queue>#include <stack>#include <map>using namespace std;typedef long long LL;const int inf=0x3f3f3f3f;const double pi= acos(-1.0);const double esp=1e-6;const int maxn=1e6+10;int main(){    int n,m,k;    int Max;    while(~scanf("%d",&n)){        priority_queue<int>q;        Max=-inf;        while(n--){            scanf("%d",&m);            if(m==1){                scanf("%d",&k);                q.push(k);                Max=max(Max,k);            }            else if(m==2){                if(q.empty())                    continue;                q.pop();                if(q.empty())                    Max=-inf;            }            else if(m==3){                if(q.empty())                    puts("0");                else                    printf("%d\n",Max);            }        }    }    return 0;}
1 0
原创粉丝点击