20240911 模拟赛总结
期望得分:100+0+30=130
实际得分:100+20+30=150
T1
感觉没有大样例也还是可以猜到那么一点的结论。k = 0 无解。当 k ≠ 0 时,考虑交换不含 1 的两项,一定能使这两个位置都符合 gcd(i,ai) = 1,如果最后长度为奇数剩一个位置出来怎么办?那就 O(n) 枚举一遍找到可行的位置和它换一下即可,易证一定能找到这样一个位置。
T2
先说说赛时的思路:把所有本质不同的回文串弄下来,然后在 DAG 上跑 DP,最后半小时发现假了!!!最后假假地交上去,意外获得了 20 分?
好像有 50 分的暴力?找个时间问问 lzh 怎么做。更新:难绷原来就是指数级的暴力。
正解是 PAM 的基本定理 + Dilworth 定理 + 最小路径覆盖问题。这下不得不去复习一下网络流,再把 Dilworth 学一下了。
PAM 的基本定理就是:本质不同的回文串数量是 O(N) 的。
Dilworth 定理:对于任意有限偏序集,其最大反链中元素的数目必等于最小链划分中链的数目。
Upd:感觉去订正 P2764 更有意义。
T3
纯纯人机数学题,做不了一点!!
但感觉有的简单部分分没打出来有点蠢。
赛时只写了 30 分,但其实 70 分是容易的,要去订正一下。
总结:T2 对着错解瞎冲,暴力没写很失败。T3 这种提答题应该多观察性质的。