Codeforces Round #412 div2 ABCD
A 按rank给出每个人的赛前分数和赛后分数 如果一个人打败了比他分数高的人 他的分数必然升高 问比赛rated吗 如果一个人的分数改变了肯定rate 如果全都没改的话 也可能是rated 这时候check分数是否递增
B 给出一个伪代码 用你的分数放进去可以生成25个rank 给出你的rank 你的现在分数x 你的最低分数y 问你hack(成功 +100 失败 - 50)成功最少多少次能够让自己的分数变化后放入这个伪代码生成的25个rank里面包含你的rank
先枚举只失败的 直到不能再失败
如果不行就枚举 成功次数 (每次都尝试失败一次)
C 你现在提交了b次 对了a次 你期望AC/SUBMIT比值是p/q 问最少提交多少次可以 或者确定不可以
让这个比值翻倍 二分翻的倍数并最小化 check 条件是 当b -> ans * q 可否实现 a -> p * ans
D 一场比赛有五道题 每道题的分数由一个通过人数和比赛总人数的比值决定 每个人在一道题上的分数由通过时间和题目总分决定 有n个人比赛 1想通过建小号的方式打败2 问最少建多少个或者确定不可以
可以看到比值最小是1/32 最大是1/2 并且n<=120 所以可以想到如果想并且有能力调控题目分数的话 需要建的小号不会太多 所以直接枚举check
需要注意的是 如果我想让A题多几个AC人数来刷低题目分数 这些人将被视为参赛者 会影响其余的题目的分数
没有看明白这个条件的我敲了一天的暴力搜索每题的总分。。打出一万个BUG。。可能已经是一条咸鱼了。。
#include<stdio.h>
#include<string.h>
#include<algorithm>
#include<math.h>
#include<map>
#include<string>
#include<vector>
#include<queue>
#include<iostream>
using namespace std ;
#define L long long
#define pb push_back int n ;
int a[130][10] ;
int b[10] ;
int m ; int fs[8] = {0,500,1000,1500,2000,2500,3000} ;
int js[8] = {0,1,2,4,8,16,32} ; int zh(int x , int nn) {
if(x * 32 <= nn) return 6 ;
if(x * 16 <= nn) return 5 ;
if(x * 8 <= nn) return 4 ;
if(x * 4 <= nn) return 3 ;
if(x * 2 <= nn) return 2 ;
return 1 ;
} int vol[10][10] ; int lv[20] ;
int c[20] ;
int d[20] ; int main () {
cin >> n ;
memset(b, 0 , sizeof(b)) ;
for(int i = 1 ; i <= n ; i ++ ) {
for(int j = 1 ; j <= 5 ; j ++ ) {
cin >> a[i][j] ;
if(a[i][j] != -1) {
b[j] ++ ;
}
}
} for(int ans = 0 ; ans <= 3200000 ; ans ++ ) {
int df1 = 0 , df2 = 0 ;
for(int i = 1 ; i <= 5 ; i ++ ) {
d[i] = b[i] ;
if(a[1][i] == -1) continue ;
if(a[2][i] == -1) continue ;
if(a[1][i] > a[2][i]) {
d[i] = b[i] + ans ;
}
}
for(int i = 1 ; i <= 5 ; i ++ ) {
if(a[1][i] != -1) df1 += fs[zh(d[i] , n + ans)] / 250 * (250 - a[1][i]) ;
if(a[2][i] != -1) df2 += fs[zh(d[i] , n + ans)] / 250 * (250 - a[2][i]) ;
}
if(df1 > df2) {
printf("%d\n" , ans) ;
return 0;
}
if(ans == 3200000) {
printf("-1\n") ;
}
}
}
Codeforces Round #412 div2 ABCD的更多相关文章
- Codeforces Round #539 div2
Codeforces Round #539 div2 abstract I 离散化三连 sort(pos.begin(), pos.end()); pos.erase(unique(pos.begin ...
- 【前行】◇第3站◇ Codeforces Round #512 Div2
[第3站]Codeforces Round #512 Div2 第三题莫名卡半天……一堆细节没处理,改一个发现还有一个……然后就炸了,罚了一啪啦时间 Rating又掉了……但是没什么,比上一次好多了: ...
- Codeforces Round#320 Div2 解题报告
Codeforces Round#320 Div2 先做个标题党,骗骗访问量,结束后再来写咯. codeforces 579A Raising Bacteria codeforces 579B Fin ...
- Codeforces Round #564(div2)
Codeforces Round #564(div2) 本来以为是送分场,结果成了送命场. 菜是原罪 A SB题,上来读不懂题就交WA了一发,代码就不粘了 B 简单构造 很明显,\(n*n\)的矩阵可 ...
- Codeforces Round #361 div2
ProblemA(Codeforces Round 689A): 题意: 给一个手势, 问这个手势是否是唯一. 思路: 暴力, 模拟将这个手势上下左右移动一次看是否还在键盘上即可. 代码: #incl ...
- Codeforces Round #412 (rated, Div. 2, base on VK Cup 2017 Round 3)(A.B.C,3道暴力题,C可二分求解)
A. Is it rated? time limit per test:2 seconds memory limit per test:256 megabytes input:standard inp ...
- Codeforces Round#412 Div.2
A. Is it rated? 题面 Is it rated? Here it is. The Ultimate Question of Competitive Programming, Codefo ...
- Codeforces Round #412 (rated, Div. 2, base on VK Cup 2017 Round 3) A B C D 水 模拟 二分 贪心
A. Is it rated? time limit per test 2 seconds memory limit per test 256 megabytes input standard inp ...
- Codeforces Round #412 (rated, Div. 2, base on VK Cup 2017 Round 3) D - Dynamic Problem Scoring
地址:http://codeforces.com/contest/807/problem/D 题目: D. Dynamic Problem Scoring time limit per test 2 ...
随机推荐
- SSL证书的生成
openssl工具下载路径:链接:https://pan.baidu.com/s/1o0-s8OplHZt55Cio2HmjVA 密码:u759 1.使用openssl工具生成一个RSA秘钥 ...
- [Spring Data MongoDB]学习笔记--建立数据库的连接
1. 有了上一篇的Mongo后,连接数据库我们还需要更多的信息,比如数据库名字,用户名和密码等. 我们可以继续来配置MongoDbFactory的实例. public interface MongoD ...
- 使用国内源(brew, pip, npm)
如果网络不行,安装依赖包的速度小于 100k/s 或者丢包严重导致安装很慢,我认为就应该使用国内源了.今天因为国内源的问题弄了很久,我觉得在国内服务器部署,全部应该从国内下载资源.分为两种情况, 存在 ...
- mailing list的原理
1 发往mailing list邮箱的邮件会被所有订阅了该邮箱的人收到 说白了,就是一种邮件群发机制,为了简化群发,不是将所有的收件人放到收件人列表中,而是发往总的邮箱即可. 2 要向该mailing ...
- python系列五:Python3列表list
#!usr/bin/python#-*-coding:gbk-*-#列表list'''可以看到a b c 三个是同一id值,当改变当中任一列表元素的值后,三者会同步改变.但d的元素值不会变,改变d的元 ...
- Qt 如何获取一个文件的 Icon 图标?
#include <QPixmap> #include <QString> #include <QFileInfo> #include <QFileIconP ...
- Linux用户相关文件之组文件
组信息文件: 1.文件地址: /etc/group -rw-r--r--. 1 root root 492 10月 6 21:56 /etc/group 2.文件内容: xiaol:x:500: 3. ...
- Linux下安装Java环境配置
1.下载安装文件 下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 2. ...
- Python之常用模块(re,时间,random,os,sys,序列化模块)(Day20)
一.时间模块 #常用方法 1.time.sleep(secs) (线程)推迟指定的时间运行.单位为秒. 2.time.time() 获取当前时间戳 在Python中表示时间的三种方式:时间戳,元组(s ...
- sharepoint 2010自定义访问日志列表设置移动终端否和客户端访问系统等计算列的公式
上个月本人开发和上线了一个在SharePoint 2010上基于HTML5的移动OA网站,后端服务采用自定义的基于AgilePoint工作流引擎的Sharepoint Web服务,前端主要采用Jque ...