这周根本没写什么题解呢,,,是不是做的题有点太少了???

CEOI 2017 Day1 C. Mousetrap

记起点为 \(S\), 终点为 \(T\),先手为 A,后手为 B。

以 \(T\) 为根,找出 \(S\to T\) 的路径 \(p_{1\sim m}(p_{1} = S, p_{m} = T)\)。 对 A 来说最理想的情况就是一直在 \(p\) 上朝着 \(T\) 走,但是 B 可以选择走出 \(p\)。考虑到走出 \(p\) 一定更劣,所以在 \(p_{i}\) 的位置走出 \(p_{i}\),则 \(p_{i\sim m - 1}\) 的其他边都可以被 A 直接删掉了。

此时需要先对每个位置走出去的代价 dp,记 \(f_{u}\) 为已经从 \(fa_{u}\) 进入 \(u\),要回到 \(fa_{u}\) 的最小代价。因为 B 肯定会选 \(f_{v}\) 最大的 \(v\),所以 A 一定是把最大值的路去掉,也就有 \(f_{u} = \max(\{f_{v}\}, 2) + |son_{u}|\)。

而在 \(p_{i}\) 时走到一个点 \(u\),且 \(i\sim m - 1\) 已经有 \(r\) 条边被断的情况下,代价为 \(i + f_{u} + suf_{i} - r - 1\)(\(suf_{i}\) 表示 \(i\sim m - 1\) 中总的向外的边数)。

因为断边的代价不好比较,所以考虑二分 \(ans\),判断答案有没有可能 \(\ge ans\)。此时明确了 B 的操作,只要存在代价 \(\ge ans\) 的边就走,而 A 就是尽可能的不让 B 走到。

考虑延迟计算在 \(i\) 时删的 \(i + 1\sim m - 1\) 的边,只在 \(i\) 处考虑 \(1\sim i\) 时刻在 \(i\) 这里删掉的边。贪心的考虑,在合法的情况下能在 \(i\sim m - 1\) 的边数肯定需要尽量多,也就是 \(r\) 尽量大,此时每条边的代价都可算出,\(\ge ans\) 都删掉即可,删掉的同时需要 \(r\gets r - 1\),若 \(r < 0\) 则不合法。注意 \(r\) 会在进入 \(i\le ans\) 的 \(i\) 时 \(r\gets r + 1\)。

CEOI 2018 Day2 A. Fibonacci Representations

https://www.cnblogs.com/rizynvu/p/23363143

CCPC 2026 Changchun B. 别样的选课大战

https://www.cnblogs.com/rizynvu/p/23391734

CCPC 2026 Changchun L. 故事

https://www.cnblogs.com/rizynvu/p/23433254

UCup 5th-4 D. Don't Fight The Music

https://www.cnblogs.com/rizynvu/p/23433411

UCup 5th-4 A. And Revive The Melody

还没写完