【优先队列】HDU1434幸福列车
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1434
他会记录下全部乘客的名字(name)和他们的人品值(RP),根据这些将他们排序,并不时地从某辆列车里踢出人品最不好(RP值最低)的一个人,当两个人人品一样不好时,他就会踢出名字难听的人(linle认为按字典顺序,排在越在后面的人名字越难听)。
当然出于列车行驶需要,他还会不时的发布一些命令,比如让某个乘客上车,合并某两辆列车等。
linle的上一任秘书***因为不能高效地执行他的这些命令而被炒鱿鱼,他现在正在寻觅新的秘书人选,你能不能胜任呢?(谢绝男士,待遇丰厚~~~)
对于每一组测试,第一行包含两个整数 N ,M ,表示一共有N( N<=10000 ) 辆列车,执行M( M<=10000 )次操作。
接下来有 N (从1开始记数)辆列车的信息,每辆列车先有一个数字 Xi(1 <= Xi <= 100 ),表示该列车有Xi个乘客,接下来Xi行乘客信息,每个乘客包含名字(20个字符以内,不包含空白符)和人品(0<= RP <=30000)。
再接下来有 M 行操作信息,一共有3种操作,分别为
GETON Xi name RP 表示有一个叫name的人品为RP的人登上第Xi列车
JOIN Xi Xj 表示有将第Xj辆列车合并到Xi辆列车
GETOUT Xi 表示从第Xi辆列车踢出一个人品最差的人
测试数据保证每个操作均合法,即不会将已经被合并到其他列车的列车再进行合并,也不会从一辆空列车里踢出乘客
Huge input, scanf is recommended.
代码:
#include<iostream>
#include<queue>
#include<string>
using namespace std;
struct node{string name;int rp;friend bool operator<(node a,node b){if(a.rp!=b.rp) return a.rp>b.rp;else return a.name<b.name;}
}stu;
int main()
{int n,m,x,y,k;cin.sync_with_stdio(false);while(cin>>n>>m){priority_queue<node> q[10001];for(int i=1;i<=n;i++){cin>>k;for(int j=0;j<k;j++){cin>>stu.name>>stu.rp;q[i].push(stu);}}for(int i=1;i<=m;i++){string str;cin>>str;if(str=="GETOUT"){cin>>x;stu=q[x].top();q[x].pop();cout<<stu.name<<endl;}else if(str=="JOIN"){cin>>x>>y;while(!q[y].empty()){stu=q[y].top();q[x].push(stu);q[y].pop();}}else if(str=="GETON"){cin>>x>>stu.name>>stu.rp;q[x].push(stu);}}}return 0;
}
【优先队列】HDU1434幸福列车相关推荐
- HDU1434 幸福列车【模拟+优先队列】
幸福列车 Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 131070/65535 K (Java/Others) Total Su ...
- HDU1434 幸福列车【模拟+优先队列】(老师程序代码注释)
幸福列车 Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 131070/65535 K (Java/Others) Total Su ...
- hdu1434幸福列车
幸福列车 Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 131070/65535 K (Java/Others) Total Su ...
- HDU 幸福列车 优先队列
幸福列车 一批幸福的列车即将从杭州驶向幸福的终点站――温州,身为总列车长的linle有一些奇怪的癖好. 他会记录下全部乘客的名字(name)和他们的人品值(RP),根据这些将他们排序,并不时地从某辆列 ...
- hdoj 1434 幸福列车 【优先队列】
幸福列车 Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 131070/65535 K (Java/Others) Total Su ...
- Hdu 1434 幸福列车【优先队列模拟】
幸福列车 Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 131070/65535 K (Java/Others) Total Submi ...
- 杭电1434幸福列车(嵌套结构体,优先队列)
幸福列车 Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 131070/65535 K (Java/Others) Total Su ...
- 杭电1434 幸福列车
幸福列车 Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 131070/65535 K (Java/Others) Total Su ...
- hdu 1434 幸福列车
题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=1434 幸福列车 Description 一批幸福的列车即将从杭州驶向幸福的终点站--温州,身为总列车长 ...
最新文章
- 技术图文:如何利用 C# 向 Access 数据库插入大量数据?
- 春天闻香食花——品尝一顿愉悦的花餐
- 增值税发票OCR识别
- 发现一个电子书下载的【简书】
- 从零开始学习docker(二十二)容器监控
- OpenSSL(加密方式,加密算法,自签证书)
- python json是什么_python json详解
- SQL Server 2008支持将数据导出为 insert into 的脚本
- opencv+Dlib人脸融合
- Linux下的时间戳
- 计算机无法读取tf卡,为什么电脑不识别TF卡?
- 微信小程序如何实现点击地图控件后位置移动到当前的定位点
- Opengl glm配置出错
- AMR文件结构解析——时长解析
- 亚马逊推出FreeTime Android应用程序,开放适合儿童资源
- java淡蓝色怎么表示_最淡的蓝是什么颜色(淡蓝色配什么颜色好看)
- Pandas的panel结构
- vue element 实现table的自动添加列
- SpringBoot+Mybatis+Mysql+Vue+ElementUi实现一个《流浪猫狗领养救助管理系统》毕业设计(超详细教程)
- js正则表达式,判断字符串是否以数字组结尾,并取出结尾的数字