比赛链接
http://codeforces.com/gym/102798
A. Golden Spirit
有一个桥,桥两边都有n个老人,你桥的一边,你可以花时间x把一个老人带到对面,然后你可以接着把那边的老人带回来,你也可以原地等待,所有老人移动一次以后需要休息t分钟,问你至少花费多少时间,能让所有老人都互相跑到对面,然后又回到原本的位置。
1 |
|
D. ABC Conjecture
题意
定义$rad(a)$为$a$的素因子的积, 给你一个c,你要计算是否存在两个数$a$和$b$,使得$a+b=c$且$rad(abc)<c$
数据范围
$1<c<10^{18}$
题解
打表发现唯一分解中,指数的最大值不为1时一定可以分解。
1 |
|
H. Message Bomb
题意
有多个聊天室,三个操作
- 学生x加入聊天室y
- 学生x离开聊天室y
- 学生x在聊天室y发布一条消息,这个聊天室的所有其他人会收到一条消息。
最后只有一次询问,问每个学生各自收到了多少条消息
数据范围
$10^5个聊天室$
$2\times10^5个学生$
$10^6次操作$
题解
维护一个懒标记,即聊天室中的同学收到了多少条消息,当同学离开聊天室的时候,把这个懒标记发放给这个学生。
1 |
|
L. Clock Master
题意
你要找一个长度为k的正整数序列a,你要最大化整个序列所有元素的lcm,输出这个lcm对自然对数的对数函数值$ln(lcm)$
题解
显然序列a中两两互质是最优解。所有我们直接考虑只取素数。
然后就成了容量为2,3,5,7,11,13,17…价值为ln2,ln3,ln5,ln7,ln11,ln13,ln17的01背包问题。
1 |
|
C. Rencontre
题意
给你一颗树,边带权,有三个人,这三个人都有自己的候选点集,他们等概率的出现在自己的候选点集上,三个人想要走到同一个点,问你三个人走的路的和的最少期望是多少。
题解
三个点abc汇聚到一起的最小答案是$\frac{ab+bc+ac}{2}$, 然后就是换根dp。
- 本文作者: fightinggg
- 本文链接: http://fightinggg.github.io/yilia/yilia/QSL8C0.html
- 版权声明: 本博客所有文章除特别声明外,均采用 MIT 许可协议。转载请注明出处!