Codeforces Round #346 (Div. 2) B - Qualifying Contest 优先队列
来源:互联网 发布:java多线程 单例 编辑:程序博客网 时间:2024/05/22 12:39
题意:n个人,m个地区,每个地区要选出2个最高分的人,如果第三高分和第二高分一样分数,那么输出“?”
思路:直接用优先队列模拟
题目链接:http://codeforces.com/contest/659/problem/B
#include <bits/stdc++.h>using namespace std;struct node{ string name; int num; bool operator < (const node &rhs) const { return rhs.num > num;//按num排序 }};priority_queue<node> q[10005];//开一个优先队列数组int n, m, k, x;string name;node e, f, g;int main(){ cin>>n>>m; for(int i=1; i<=m; i++) while(!q[i].empty()) q[i].pop(); for(int i=0; i<n; i++) { cin>>name>>k>>x; f.name = name, f.num = x; q[k].push(f); } int cnt = 0; for(int i=1; i<=m; i++) { cnt = 0; while(!q[i].empty()) { if(cnt == 0) { cnt++; e = q[i].top(); q[i].pop(); } else if(cnt == 1) { cnt++; f = q[i].top(); q[i].pop(); } else if(cnt == 2) { cnt++; g = q[i].top(); q[i].pop(); } else if(cnt == 3) break; } if(cnt == 3) { if(f.num == g.num) puts("?"); else printf("%s %s\n", e.name.c_str(), f.name.c_str());//string的printf输出 } else { printf("%s %s\n",e.name.c_str(), f.name.c_str()); } } return 0;}
0 0
- Codeforces Round #346 (Div. 2) B - Qualifying Contest 优先队列
- Codeforces Round #346 (Div. 2)-B. Qualifying Contest(排序)
- Codeforces Round #346 (Div. 2)--B. Qualifying Contest
- Codeforces Round #346 (Div. 2) B. Qualifying Contest
- Codeforces Round #346 (Div. 2) - B Qualifying Contest
- Codeforces Round #346 (Div. 2) B. Qualifying Contest
- CodeForces 659B Qualifying Contest
- CodeForces-659B-Qualifying Contest
- Codeforces Round #390 (Div. 2)(A,B,C(记忆化搜索),D(贪心,优先队列))
- Codeforces Round#289(DIV.2) + qualifying round for WCC
- Codeforces Round #216 (Div. 2) B. Valera and Contest
- Codeforces Round #216 (Div. 2) B. Valera and Contest
- Codeforces Round #303 (Div. 2)-D. Queue(优先队列)
- Codeforces Round #350 (Div. 2)(D)优先队列
- Codeforces Round #357 (Div. 2)-C. Heap Operations(优先队列)
- Codeforces Round #374 (Div. 2) D 贪心+优先队列
- Codeforces Round #390 (Div. 2)-DFedor and coupons(优先队列)
- Codeforces Round #433 (Div. 2 C. Planning(优先队列)
- Java,String和Date的转换
- ScrollView Xib布局
- CURD特性
- ios开发navigationController pushViewController 方式多次跳转 怎么返回到最上层,怎么返回到指定的某一层
- 普通查询方式
- Codeforces Round #346 (Div. 2) B - Qualifying Contest 优先队列
- 第十周项目一 阅读程序,写出程序运行的结果(3)
- 常用连贯操作
- C#编程基础 实验(8) (4)
- 视图
- nyist 硬币找零(完全背包)
- BZOJ 3191 JLOI2013 卡牌游戏
- 两个整数值的交互
- java.lang.IllegalArgumentException: Service Intent must be explicit: Intent {