比赛链接
https://codeforces.com/contest/1555
1. A. PizzaForces
1.1. 题意
6元15个物品,8元20个物品,10元25个物品
现在需要买至少n个物品,问需要多少钱
1.2. 做法
首先看单价,发现他们都相同,然后就是尽量不要多买了。
如果n比15,20,25的最小公倍数的两倍还要大,则多出的这一部分,可以考虑直接购买6元的,剩下的小范围dp即可
核心思想: 大范围贪心,小范围dp
notes: 注意一定是至少两倍以上才能贪心
1.3. 代码
1 |
|
2. B. Two Tables
pass
3. C. Coin Rows
3.1. 题意
两行n列的矩阵,alice和bob在左上角,他们只可以往右或者往下走,alice先走,bob后走。
所有bob经过的位置,如果这里没有被alice走过,那么bob就可以拿走这里的值,
最后bob希望最大化自己的值的和,alice希望最小化bob的值的和
问最后bob的值的和最后是多少
3.2. 做法
考虑alice什么时候向下走,然后bob能拿这段第一行的后缀,或者第二行的前缀,bob会取最大
3.3. 代码
1 |
|
4. D. Say No to Palindromes
4.1. 题意
没有长度超过1的回文子串的串就是漂亮串,给你一个串S,k组询问,每次问S的一个子串至少修改几个字符后是漂亮串
S只包含abc三个字母
4.2. 做法
打表发现漂亮串只有6类,他们分别以abc
,acb
,bac
,bca
,cab
,cba
作为自己的循环节 ,然后就直接按照这6类来进行比较,看有多少字符不同即可,可以使用前缀和优化。
4.3. 代码
1 |
|
- 本文作者: fightinggg
- 本文链接: http://fightinggg.github.io/yilia/yilia/QX56IC.html
- 版权声明: 本博客所有文章除特别声明外,均采用 MIT 许可协议。转载请注明出处!