CF506E
建出自动机后矩阵快速幂,将相同的路径压在一起,奇回文串特判
CF1188D
考虑最后所有数都变成了 $ x $,第 $ i $ 个数要被加的次数就是 popcount($ x - a_i $),将所有 $ a_i $ 变成 $ max{a} - a_i $,按位 dp,进位情况只有 $ n + 1 $ 种
CF1188E
如果一个串可以一直进行操作称为好串,坏串的方案是好算的,枚举一个操作次数即可,好串能变成的串 $ b $ 和原串 $ a $ 一定满足所有 $ a_i - b_i $ 在 mod 串长意义下相同,可以通过把两个串的极差都变的小于串长来证明,枚举 $ a_i - b_i $ mod 串长的值,组合数计算
CF521D
把 assign 操作变成 add 操作,操作顺序一定是 assign, add, multiply,直接贪心
CF521E
提取出原树任意一颗生成树,如果有一条边被不在生成树上的边覆盖至少两次就可以构造
CF526G
将问题传化成选至多 $ 2y $ 个叶子且 $ x $ 要在这些点的连通块中,容易发现直径端点至少会被选中一个,剩下可以选 $ 2y - 2 $ 个任意的点,再选一个点使得 $ x $ 在连通块中,分类讨论一下
CF843D
容易发现最短路增量小于等于选的边的数量,因此值域很小,开值域个 queue 可以去掉堆的 log
原文:https://www.cnblogs.com/LJC00118/p/13584464.html