Codeforces 659B Qualifying Contest【模拟,读题】
2024-09-02 06:09:16
写这道题题解的目的就是纪念一下半个小时才读懂题。。。英文一多读一读就溜号。。。
读题时还时要静下心来。。。
题目链接:
http://codeforces.com/contest/659/problem/B
题意:
给定地区及来自相应地区的人的分数,每个地区选两个分数最高的人 参加区域赛,如果选出的两个人唯一,则输出名字,否则如果还需要进行下一次比赛,输出“?”。
分析:
不唯一的情况就是第二个人和第三个人的分数相同嘛。。。排个序找一下就好了。
代码:
#include <bits/stdc++.h>
using namespace std;
const int maxn = 1e5 + 5;
struct Node{string s; int sc;};
Node node[maxn];
int num[maxn];
vector<Node>v[maxn];
bool cmp(Node a, Node b)
{
return a.sc >b.sc;
}
int main (void)
{
int n, m;
cin>>n>>m;
string s;
int id, score;
for(int i = 0; i <n; i++){
cin>>s>>id>>score;
node[i] = (Node){s, score};
v[id].push_back(node[i]);
num[id]++;
}
for(int i = 1; i <= m; i++){
sort(v[i].begin(), v[i].end(), cmp);
if(v[i].size() > 2 && v[i][2].sc == v[i][1].sc) cout<<"?"<<endl;
else cout<<v[i][0].s<<' '<<v[i][1].s<<endl;
}
return 0;
}
最新文章
- 网站添加第三方登陆(PHP版)
- 通过sqlserver发送邮件
- 一步一步学习Bootstrap系列--表单布局
- r-cnn学习(五):SmoothL1LossLayer论文与代码的结合理解
- 一个js简单的日历显示效果的函数
- UDP主要丢包原因及具体问题分析
- Redis必须注意的慢查询问题
- ubuntu rhythmbox乱码解决方法
- 谈&ldquo;技术含量&rdquo;的问题
- soem函数库的编译
- 二叉索引树BIT
- SQL SERVER 2008 中三种分页方法与总结
- fetchField 和 fetchColumn
- uitableviewcell高度自适应笔记
- 退出telnet
- SQL Server中的20个系统变量
- phpcms二次开发步骤
- Quartz 开源的作业调度框架
- 禁用 Windows Azure 网站中的 ARR 实例关联
- Mina框架与Spring整合配置文件