CF74A Room Leader 题解
Content
一场 CF 比赛有 \(n\) 个人,有 ABCDE 五道题目。在比赛过程中,参赛者还可以随时互相攻击,成功一次加 \(100\) 分,失败一次扣 \(50\)分,已知第 \(i\) 个人攻击成功了 \(plus_i\) 次,失败了 \(minus_i\) 次,并且 TA 五道题目的分数分别是 \(a_i,b_i,c_i,d_i,e_i\)。试判断出本场比赛的第一名。
Range
\(n,plus_i,minus_i\) 的范围:
\(1\leqslant n\leqslant 50,0\leqslant plus_i,minus_i\leqslant 50\)。
\(a_i,b_i,c_i,d_i,e_i\) 的范围:
\(150\leqslant a_i\leqslant 500,300\leqslant b_i\leqslant 1000,450\leqslant c_i\leqslant 1500,600\leqslant d_i\leqslant 2000,750\leqslant e_i\leqslant 2500\)。但是其中 \(a_i,b_i,c_i,d_i,e_i\) 中的任意一个都可以为 \(0\),代表五个问题中可能会有没解决出来的。
Solution
这道题目属于看完了以后立马就会有思路的,也就是说,我们可以用模拟的方法解决。
可以很明显的知道,第 \(i\) 为参赛者的得分就是 \(100\cdot plus_i-50\cdot minus_i+a_i+b_i+c_i+d_i+e_i\),计算完分数后再按照分数为关键字排序,输出第一位的名字就可以通过这道题目了。
Code
#include <cstdio>
#include <cstring>
#include <string>
#include <iostream>
#include <cmath>
#include <algorithm>
using namespace std;
struct user {
string name;
int win, lose, ai, bi, ci, di, ei;
long long score;
bool operator < (const user& kkk) const {return score > kkk.score;}
}a[57];
int n;
int main() {
scanf("%d", &n);
for(int i = 1; i <= n; ++i) {
cin >> a[i].name;
scanf("%d%d%d%d%d%d%d", &a[i].win, &a[i].lose, &a[i].ai, &a[i].bi, &a[i].ci, &a[i].di, &a[i].ei);
a[i].score = a[i].win * 100 - a[i].lose * 50 + a[i].ai + a[i].bi + a[i].ci + a[i].di + a[i].ei;
}
sort(a + 1, a + n + 1);
cout << a[1].name;
return 0;
}
CF74A Room Leader 题解的更多相关文章
- [2015hdu多校联赛补题]hdu5378 Leader in Tree Land
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5378 题意:给你一棵n个结点的有根树.因为是有根树,那么每个结点可以指定以它为根的子树(后面讨论的子树 ...
- HDU-3974 Assign the task题解报告【dfs序+线段树】
There is a company that has N employees(numbered from 1 to N),every employee in the company has a im ...
- zookeeper源码分析之五服务端(集群leader)处理请求流程
leader的实现类为LeaderZooKeeperServer,它间接继承自标准ZookeeperServer.它规定了请求到达leader时需要经历的路径: PrepRequestProcesso ...
- Team Leader 你不再只是编码, 来炖一锅石头汤吧
h3{ color: #000; padding: 5px; margin-bottom: 10px; font-weight: bolder; background-color: #ccc; } h ...
- 【分布式】Zookeeper的Leader选举
一.前言 前面学习了Zookeeper服务端的相关细节,其中对于集群启动而言,很重要的一部分就是Leader选举,接着就开始深入学习Leader选举. 二.Leader选举 2.1 Leader选举概 ...
- 2016 华南师大ACM校赛 SCNUCPC 非官方题解
我要举报本次校赛出题人的消极出题!!! 官方题解请戳:http://3.scnuacm2015.sinaapp.com/?p=89(其实就是一堆代码没有题解) A. 树链剖分数据结构板题 题目大意:我 ...
- noip2016十连测题解
以下代码为了阅读方便,省去以下头文件: #include <iostream> #include <stdio.h> #include <math.h> #incl ...
- BZOJ-2561-最小生成树 题解(最小割)
2561: 最小生成树(题解) Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 1628 Solved: 786 传送门:http://www.lyd ...
- Codeforces Round #353 (Div. 2) ABCDE 题解 python
Problems # Name A Infinite Sequence standard input/output 1 s, 256 MB x3509 B Restoring P ...
随机推荐
- 分享一个工具方法:日期格式化 & 日期转化,用法与java类SimpleDateFormat类似
/** * y 年(201X) * M 年中的月份(1-12) * d 月份中的天数(1-31) * H 一天中的小时数(0-23) * h am/pm 中的小时数(1-12) * m 小时中的分钟数 ...
- 面试官又整新活,居然问我for循环用i++和++i哪个效率高?
原创:微信公众号 码农参上,欢迎分享,转载请保留出处. 前几天,一个小伙伴告诉我,他在面试的时候被面试官问了这么一个问题: 在for循环中,到底应该用 i++ 还是 ++i ? 听到这,我感觉这面试官 ...
- python的异常打印
在代码运行中有的代码可能会发生异常,但是奇怪的是异常信息并没有打印出来, 于是我们在代码中加入这个就能打印出来啦. try: #playsound(msg.file_name()) #playsoun ...
- Atcoder Grand Contest 022 E - Median Replace(dp)
Atcoder 题面传送门 & 洛谷题面传送门 首先考虑对于固定的 01 串怎样计算它是否可以通过将三个连续的 \(0\) 或 \(1\) 替换为其中位数得到.我们考虑单调栈,新建一个栈,栈底 ...
- Python pandas merge不能根据列名合并两个数据框(Key Error)?
目录 折腾 解决方法 折腾 数据分析用惯了R,感觉pandas用起来就有点反人类了.今天用python的pandas处理数据时两个数据框硬是合并不起来. 我有两个数据框,列名是未知的,只能知道索引,以 ...
- 在windows下使用shell,运行shell脚本
在Windows操作系统下运行Shell脚本,缺少的只是一个Git软件.其下载路径为Git - Downloading Package. 安装之后,将安装路径下的bin文件夹的路径作为环境变量.于是我 ...
- javaSE高级篇2 — 流技术 — 更新完毕
1.先认识一个类----File类 前言:IO相关的一些常识 I / O----输入输出 I 输入 input 0 输出 output I / o 按数据的流动方向来分- ...
- javaSE高级篇1 — 异常与多线程基础
1.异常的体系结构 注:Throwable是一个类,不是一个接口,这个类里面是描述的一些Error和Exception的共性,如图所示: 异常 / 错误是什么意思? 定义:指的是程序运行过程中,可能 ...
- A Child's History of England.8
CHAPTER 3 ENGLAND UNDER THE GOOD SAXON, ALFRED Alfred [born in 849 CE, 唐: 618年-907年] the Great was a ...
- day01互联网架构理论