VK Cup 2017 Round 3 + Codeforces Round #412
A 读题题
B 就是你排名第p,得了x分,而最终至少需要y分,你需要最少的successful hack,使得最终得分s>=y,且由s随机取25个数,使p被选中。
(1)暴力枚举hack成功几次,失败几次就好了
(2)另解:枚举尽可能小的s,使|s-x|=0(mod 50),分类讨论
If s ≤ x, we need 0 successful hacks, since we can just make (x - s) / 50 unsuccessful hacks.
If s > x and s - x is divisible by 100, we need exactly (s - x) / 100 successful hacks.
If s > x and s - x is not divisible by 100, we need (s - x + 50) / 100 successful hacks and one unsuccessful hack.
C 一看到题就打了exgcd,调了一晚上,各种看错,最后发现爆long long了。。
其实列个不等式解就好了
D 一道读题题??
这道题的N最大为120,现在考虑极端的例子,假设有N个人,全都通过了这道题,如果想让通过率变为最小的,也就是1/32,那么最多也只需要开32倍的小号(或者33倍?)
反之,如果通过率为0想变成1/2 是2倍的N,所以这道题可以暴力枚举开小号的个数,然后在贪心决定这些小号在每道题上通过与否.
然后就过了。 数据范围这么小,看懂题不就会做了吗。。
E 贪心+二分
假设能分成m条链 && m<c(1) 显然可以把多余的1从某条链中取出 形成m+1条,则只要二分找到最小成立的m
判定当链数为x,即加r次数<=x。
贪心:
1.每次取链都尽可能长,直到不能取为止(显然链越长,越能容纳多出来的数,况且能少一个多余的数)
2.从大的数开始放,每次只要放在最长链上就好啦
另解:一个一个枚举,每次贪心地放置一条链。只需预处理出log a(a为input的最大值)组数(2的a次幂放到a,否则求出它能放的最短链长)
O(n log a)
最新文章
- AutoMapper之ABP项目中的使用介绍
- [CF752D]Santa Claus and a Palindrome(优先队列,贪心乱搞)
- spring 声明式事务管理
- php关于金额比较引发的问题(转)
- Qt_5_3_MSVC2012-编译QFtp-qt5编译QFtp
- 项目后台判断session过期的页面代码
- 套题T5//各种树
- 1003. Parity(并查集)
- 响应式框架中,table表头自动换行的解决办法
- 使用 Java 配置进行 Spring bean 管理--转
- 【转】linux之自建yum仓库
- Week6(10月17日):周末别忘记运动
- php 缓存之 APC 和apcu
- 后台返回null iOS
- day5 liaoxuefeng---访问数据库、web开发、异步IO
- webpack基础
- 基于.net的分布式系统限流组件(限流算法:令牌算法和漏斗算法)
- C++入门程序作业3
- 推荐好用的JavaScript模块
- 章节一、1-Selenium简介