摘要: CF1487B Cat Cycle 首先猫 A 的行动是确定的,我们可以先算出它走的圈数和最终的位置,然后根据 \(n\) 分类讨论: 偶数。不会相遇,猫 B 最终在猫 A 对称的位置。 奇数。如果猫 A 不动那么猫 B 每圈只需要走 \(n-1\) 步。猫 A 会动其实就是猫 A 每多走一圈,两猫 阅读全文
posted @ 2025-03-19 01:39 Sumering 阅读(17) 评论(0) 推荐(0)
摘要: CF833B The Bakery 令 \(f_{i,j}\) 表示前 \(i\) 个数字分成 \(j\) 段的最大总价值,转移方程 \(f_{i,j}\gets\max\{f_{i,l-1}+\operatorname{kind}(l,j)\}\),其中 \(\operatorname{kind} 阅读全文
posted @ 2025-03-14 16:52 Sumering 阅读(28) 评论(0) 推荐(0)
摘要: 因为是排列,所以数对总数是调和级数 \(O(n\log n)\)。 如果按照常规的数对容斥,左右端点均在 \([l,r]\) 中的数对数量等于左右端点均在 \([1,r]\) 中的数对数量减去左右端点均在 \([1,l-1]\) 中的数对数量,再减去左端点在 \([1,l-1]\) 中且右端点在 \ 阅读全文
posted @ 2025-03-02 19:09 Sumering 阅读(11) 评论(0) 推荐(0)
摘要: 按实力值排序后依次加入,维护当前分组方案。如果能加入已有的组就贪心加入人数较少的组。只有当任意一组都无法加入时才新开一组,此时无论前面的人如何分组都会多一个当前实力值的的人出来。 加入一个人会让组的最值变化 \(1\),人数增加 \(1\),所以可以用类似 01BFS 的方法开一个双端队列维护当前所 阅读全文
posted @ 2025-03-02 14:10 Sumering 阅读(37) 评论(0) 推荐(0)
摘要: 因为 doge 不能提前跳过来等待,并且传递消息没有限制,所以我们只关注当前在哪座摩天楼以及当前 doge 可能的跳跃能力。 根号分治,跳跃能力较小的所有 doge 不同的跳跃能力有限,跳跃能力较大的每只 doge 能跳到的位置有限,状态数量只有 \(O((N+M)\sqrt N)\)。但数据范围较 阅读全文
posted @ 2025-03-02 02:22 Sumering 阅读(6) 评论(0) 推荐(0)
摘要: 先不考虑增加的花费。从小到大增加每个数,求出每个数至少需要增加多少。 这显然是一组合法的修改方案,如果只考虑修改结果,那么这显然也是花费最少的结果序列。 所以我们只需要重新安排每个数的修改结果。假设原序列中的数 \(x_1,x_2\) 分别修改成了结果序列中的 \(y_1,y_2\),其中 \(x_ 阅读全文
posted @ 2025-02-25 20:39 Sumering 阅读(73) 评论(0) 推荐(0)
摘要: 双调序列 若序列进行循环位移后能分割成两个单调的序列,则该序列被称为双调序列。 Batcher 定理 一个长度为偶数的双调序列分成前后等长的两部分,每两个对应位置元素调用比较器后,仍然得到两个双调序列,并且较小那部分的 \(\max\) 不大于较大那部分的 \(\min\)。 把双调序列的走势画出来 阅读全文
posted @ 2025-02-24 07:18 Sumering 阅读(180) 评论(0) 推荐(0)
摘要: 由点,到链,再连成环。维护点的信息,点到链的信息,然后把两条链合成环去计算。 因为添加的边不能为自环也不能为原树中的边,所以连成的环长度至少为 \(2\),分是否是直链计算。 令 \(siz\) 表示子树内所有点的权值和,\(dis\) 表示子树内所有点深度乘权值的和,\(f\) 表示子树内所有点到 阅读全文
posted @ 2025-02-23 03:49 Sumering 阅读(9) 评论(0) 推荐(0)
摘要: 首项加末项的和乘项数除以 \(2\) 等于等差数列的和。 实际应用中往往不会这么简单,一般需要根据等差数列的和反过来求等差数列的其它信息,此时对于边界的处理就很重要。 P6784 「EZEC-3」造房子 分类讨论,要么一种材料过少,钱全买该种材料也比另一种材料少;要么先将较少的材料补齐,然后同时购买 阅读全文
posted @ 2025-02-19 19:30 Sumering 阅读(14) 评论(0) 推荐(0)
摘要: 翻的肯定是最前面和最后面的若干张,翻中间不会使最大值减小或最小值增大。 容易发现,翻面一定得改变最小值或最大值才有意义,所以一旦翻之前的值已经不是最值就没必要翻。 先找出前面最多翻几张,然后从多到少枚举。后面在翻之前一定必须是唯一的最大值,并且不能翻出小于等于前面翻的最后一张翻之前的值。 前面翻的越 阅读全文
posted @ 2025-02-17 13:07 Sumering 阅读(8) 评论(0) 推荐(0)