HDUOj 看病要排队 优先队列的使用 题目1873
2024-09-08 04:16:41
STL优先队列的具体描写叙述
题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=1873
#include<stdio.h>
#include<queue>
using namespace std;
struct node
{
int q,k;
friend bool operator<(node a,node b)//先比較q的大小,假设相等就按k的大小排列
{
if(a.q<b.q) return true;
if(a.q==b.q&&a.k>b.k) return true;
return false;
}
};
priority_queue<node>que[4];//队列数组
int main()
{
int n;
while(~scanf("%d",&n))
{
while(!que[1].empty())//清空
que[1].pop();
while(!que[2].empty())
que[2].pop();
while(!que[3].empty())
que[3].pop();
int h=0,a,c,i=1,m[2000];
char s[4];
node b;
for(int j=0;j<n;j++)
{
scanf("%s",s);
if(s[0]=='I')//进入
{
scanf("%d %d",&a,&c);
b.q=c;
b.k=i++;
que[a].push(b);
}
else//推断输出
{
node b;
scanf("%d",&a);
if(que[a].empty()) printf("EMPTY\n");
else{printf("%d\n",que[a].top().k);
que[a].pop();}
}
}
}
return 0;
}
最新文章
- Android—自定义Dialog
- 简化C语言文法
- php保留键随机打乱数组顺序
- 代码验证浏览器是否支持html audio 和video
- shell切割日志脚本
- Env:zsh和fish安装和使用
- Castle 开发系列文章
- 在C#中使用NPOI2.0操作Excel2003和Excel2007
- JavaScript如何获取css属性
- 关于怎么C#控制台窗口中怎么创建连接查询数据库操作
- HIHOcoder 1403 后缀数组一&#183;重复旋律
- Matlab:非线性热传导(抛物方程)问题
- js五道经典练习题--第四道qq好友列表
- andoid-sdk 安装时出现 Stopping ADB server failed(code -1) 错
- CCF CSP 201709-2 公共钥匙盒
- mysql 闪回测试
- 手把手教你搭建Docker私有仓库
- SenchaTouch学习博客
- 转:Linux下which、whereis、locate、find 命令的区别
- c++ 跳转语句块