HDU 1873 优先队列
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1873
实现方式就是每个医生一个优先队列,IN进队,OUT出队。
AC代码:
#include <iostream>
#include <queue>
using namespace std;
//2020-08-24 10:55:45 Accepted 1873 156MS 1432K 1202 B G++
struct node{int id;int rank;node(int d, int r): id(d), rank(r) {}//这块记一下怎么写friend bool operator < (const node& a, const node& b) {if(a.rank == b.rank)return a.id > b.id;return a.rank < b.rank;}
};priority_queue<node> q1, q2, q3;int main() {int n, A, B;string op;while(cin>>n) {int cnt = 0;//清空优先队列while(!q1.empty()) q1.pop();while(!q2.empty()) q2.pop();while(!q3.empty()) q3.pop();for(int i=1; i<=n; i++) {cin>>op;if(op == "IN") {cnt++;cin>>A>>B; //一拥有优先级B的病人要求医生A诊治if(A == 1) q1.push(node(cnt, B));else if(A == 2) q2.push(node(cnt, B));else q3.push(node(cnt, B));}else {cin>>A;if(A == 1) {if(!q1.empty()) {cout<<q1.top().id<<endl;q1.pop(); }elsecout<<"EMPTY"<<endl;}else if(A == 2) {if(!q2.empty()) {cout<<q2.top().id<<endl;q2.pop(); }elsecout<<"EMPTY"<<endl;}else if(A == 3) {if(!q3.empty()) {cout<<q3.top().id<<endl;q3.pop(); }elsecout<<"EMPTY"<<endl;}}}}return 0;
}
HDU 1873 优先队列相关推荐
- HDU 1873 优先队列 Java版
Problem - 1873 (hdu.edu.cn)https://acm.hdu.edu.cn/showproblem.php?pid=1873 创建了三个优先队列,分别代表三个医生,优先队列里添 ...
- Java算法_优先队列和PriorityQueue——HDU 1873:看病要排队
目录 优先队列和PriorityQueue HDU 1873:看病要排队 java.util.Comparator 优先队列和PriorityQueue java.util.PriorityQueue ...
- 【HDU 1873 --- 看病要排队】优先队列
[HDU 1873 --- 看病要排队]优先队列 Description 看病要排队这个是地球人都知道的常识. 不过经过细心的0068的观察,他发现了医院里排队还是有讲究的.0068所去的医院有三个医 ...
- HDU 1873 - 看病要排队 ← 优先队列
[题目链接] http://acm.hdu.edu.cn/showproblem.php?pid=1873 [问题描述] 看病要排队这个是地球人都知道的常识. 不过经过细心的0068的观察,他发现了医 ...
- 【优先队列】HDU 1873——看病找医生
来源:点击打开链接 看路径记录的BFS之前,再看一遍优先队列的用法. 优先队列的排序规则可以用运算符重载的方式完成,通常意义下,应该用friend bool operator <进行重载. #i ...
- HDU 1873 看病要排队(结构体+优先队列)
题目: Problem Description 看病要排队这个是地球人都知道的常识. 不过经过细心的0068的观察,他发现了医院里排队还是有讲究的.0068所去的医院有三个医生(汗,这么少)同时看病. ...
- 【HDU - 1873】 看病要排队(优先队列)
题干: 看病要排队这个是地球人都知道的常识. 不过经过细心的0068的观察,他发现了医院里排队还是有讲究的.0068所去的医院有三个医生(汗,这么少)同时看病.而看病的人病情有轻重,所以不能根据简单 ...
- HDU - 1873 看病要排队(优先队列)
看病要排队 #include<iostream> #include<queue> using namespace std; struct node {int x;//优先级 i ...
- HDU - 1873
题目连结:[看病要排队(http://acm.hdu.edu.cn/showproblem.php?pid=1873)] 本题是一个优先队列的水题,根据题目需要,我用到了pair(pair的用法可自行 ...
最新文章
- 【干货】大数据和人工智能.pdf
- php开发自学经典.pdf_PHP从入门到精通(第3版) PDF扫描版[45MB]
- java 多线程的使用_Java的多线程1:线程的使用
- Django中重定向页面的时候使用命名空间
- zigbee 协议栈的时钟和定时器分频
- Flink SQL Client进行Kafka事实表与Hbase维度表Join(纯DDL/SQL方式)
- 论文阅读 - Beat Tracking by Dynamic Programming
- # 解析bt文件_BT、磁力链这些词语是什么意思?
- iphonex价格_正二品:帮你解读IphoneX回收价,为何二手市场iphoneX依旧吃香
- 基于ARM的车牌识别技术研究与实现
- 机器学习初探(手写数字识别)HOG图片
- 怎么自学python-你们都是怎么学 Python 的?
- 用firefox保存网页
- matlab安装及破解
- linux文件系统-文件的写与读
- tf SavedModel 保存模型的新方式
- 端午百望山爬山活动-金山词霸运营团队活动
- 棋牌游戏支付接口H5支付宝微信
- Muse UI遇到的坑
- # 将日期的符串(Sat Mar 21 08:00:00 CST 2020 )转换为指定字符串日期(yyyy-MM-dd HH:mm:ss)
热门文章
- 华为mate40和mate40pro哪个更值得入手-华为mate40和mate40pro的性价比-华为mate40和mate40pro的区别
- duilib制作窗体动画效果
- 发字的楷书写法图片_成年人要想练字,应该先练楷书还是行书?
- 线段树求逆序对(hdu1394Minimum Inversion Number)
- 快递单号查询,物流查询
- android使用磁场传感器和加速度传感器确定当前朝向(即:方位角),以及常见问题的解决办法
- 计算机word保存如何操作,电脑word怎么保存 在电脑上word打字怎么保存
- vue的五个小实例解析其基础功能
- GNU C++ 智能指针6-- 解析_Sp_counted_inplace类
- 关于tv app的一些想法