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 ...
随机推荐
- docker创建mongodb并且测试代码
mongodb docker 安装mongodb-创建用户 docker run -itd --name mongo -p 27017:27017 mongo --auth 进入数据库添加密码 ...
- git使用小技巧
1. 合并一个分支的某次提交到另一个分支上 例如 将dev的某次提交 asfdiwehfsalkdnva872383 合并到master # git checkout master # git che ...
- 如何在 Kubernetes 集群中玩转 Fluid + JuiceFS
作者简介: 吕冬冬,云知声超算平台架构师, 负责大规模分布式机器学习平台架构设计与功能研发,负责深度学习算法应用的优化与 AI 模型加速.研究领域包括高性能计算.分布式文件存储.分布式缓存等. 朱唯唯 ...
- CF1175G
叉姐牛逼. \(f_{k,i} = \min_{0\leq j <i}{f_{k - 1,j} + RMQ(j + 1,i) * (i - j)}\) 我们考虑在序列上分治一波. 按照\(m\) ...
- exCRT & 骆克强乘法
exCRT & 骆克强乘法 只是丢两个板子啦. exCRT的做法就是每次拿两个方程合并成一个,合并的过程推下式子就是个 exgcd.具体可以在 zjk 的 ptt 里面找到. 先放个 $ O( ...
- [R报错] Kruskal-wallis test 所有组的层次都必需是有限的
做了个两组间的Kruskal-wallis检验,出现如下错误: 对应的英文版本错误为: All group levels must be finite is.finite(data$type)一下果然 ...
- Xshell初步设置
目录 双击复制,右击粘贴 双击复制全路径 复制窗口:双击窗口 编码:设置utf-8 外观设置: 窗口化文件传输 vim中使用鼠标点击移动 隐藏/出现菜单栏 ctrl+鼠标控制字体大小 alt+O 弹出 ...
- R语言与医学统计图形-【24】ggplot位置调整函数
ggplot2绘图系统--位置调整函数 可以参数position来调整,也有专门的函数position_*系列来设置. 位置函数汇总: 1.排列 并排排列 mean <- runif(12,1, ...
- Python爬虫3大解析库使用导航
1. Xpath解析库 2. BeautifulSoup解析库 3. PyQuery解析库
- Spark(三)【RDD中的自定义排序】
在RDD中默认的算子sortBy,sortByKey只能真的值类型数据升序或者降序 现需要对自定义对象进行自定义排序. 一组Person对象 /** * Person 样例类 * @param nam ...