2023.6 水题记录 (持续更新)

1. CF1190B Tokitsukaze, CSL and Stone Game

博弈论. 首先把一开始就会输的情况判掉, 然后容易发现石子最终一定会被取成 \(0,1,\cdots,k\) 的形式.

计算需要取走的石子数, 判断奇偶性即可.

2. [AGC002E] Candy Piles

还是博弈论. 偷一张官方题解的图:

image

按石子数量排序后容易发现操作就是取最左边一行或最下面一列, 就相当于将棋子向右向上从原点移到边界直到不能动.

找规律容易发现每一条左下/右上的斜线的胜负是相同的, 结合角上的必败, 能简单求出胜负情况.

3. P3750 [六省联考 2017] 分手是祝愿

经典题.

一个显而易见的观察是关灯的方案只能是从大到小关, 并且这是最优的. (每个灯都不能用其他灯开关的组合替代, 根据因数性质这是显然的)

于是我们设 \(f_i\) 为从还有 \(i\) 个需要按的键到还有 \(i-1\) 个需要按的键的期望步数.

\(f_i=\dfrac{i}{n}\times 1+\dfrac{n-i}{n}(f_{i+1}+f_i+1)\), 因为按错了还要按回来.

变形得 \(f_i\)\(f_{i+1}\) 的递推式, 初始化 \(f_{n+1}=0\).

具体操作时, 先手动模拟一遍得到需要按键的次数 \(c\).

\(c\leqslant k\) 直接按就行; 否则答案应为 \(k+f_{k+1}+\cdots+f_{c}\).

4. P7895 『JROI-3』删树

你需要这个式子: \(s=\sum\limits_{i=2}^n \text{dis}(1,i)(2-d_i)\)

其中 \(s\) 为边权和, \(\text{dis}\) 表示距离, \(d_i\) 表示度数.

式子的证明本身并不难, 容斥即可.

5. P4345 [SHOI2015]超能粒子炮·改

题解区写的可以说是一个看不懂, 于是又写了一个.

运算均在模 \(p(=2333)\) 意义下进行.

\(\begin{aligned}f(n,k)&=\sum\limits_{i=0}^k\dbinom{n}{i}\\&=\sum\limits_{i=0}^k\dbinom{n\bmod p}{i\bmod p}\dbinom{\lfloor n/p\rfloor}{\lfloor i/p\rfloor}\end{aligned}\)

枚举 \(i\bmod p\):

\(\begin{aligned}f(n,k)&=\sum\limits_{r=0}^{p-1}\dbinom{n\bmod p}{r}\left(\sum\limits_{i=0}^k[i\bmod p=r]\dbinom{\lfloor n/p\rfloor}{\lfloor i/p\rfloor}\right)\\&=\sum\limits_{r=0}^{p-1}\dbinom{n\bmod p}{r}\left(\sum\limits_{t=0}^{\lfloor(k-r)/p\rfloor}\dbinom{\lfloor n/p\rfloor}{t}\right)\\&=\sum\limits_{r=0}^{p-1}\dbinom{n\bmod p}{r}f(\lfloor n/p\rfloor,\lfloor(k-r)/p\rfloor)\end{aligned}\)

其中 \(k\geqslant p\). \(k<p\) 时直接有 \(f(n,k)=\sum\limits_{i=0}^k\dbinom{n\bmod p}{i\bmod p}\dbinom{\lfloor n/p\rfloor}{\lfloor i/p\rfloor}=\sum\limits_{i=0}^k\dbinom{n\bmod p}{i}=f(n\bmod p,k)\).

然后发现后面 \(\lfloor(k-r)/p\rfloor\) 的取值很少.

因为 \(r\in[0,p-1]\), 容易发现只可能有 \(\lfloor k/p\rfloor-1,\lfloor k/p\rfloor\) 两种取值.

具体地, 若 \(r\in[0,k\bmod p]\), \(\lfloor(k-r)/p\rfloor=\lfloor k/p\rfloor\);

\(r\in [k\bmod p+1,p-1]\), \(\lfloor(k-r)/p\rfloor=\lfloor k/p\rfloor-1\).

注意第二个式子的 \(r\) 可能是不存在的.

为了避免种种问题, 我们可以先都按 \(\lfloor k/p\rfloor-1\) 算, 然后再把实际为 \(\lfloor k/p\rfloor\) 的部分再加上.

\(\begin{aligned}f(n,k)&=\sum\limits_{r=0}^{p-1}\dbinom{n\bmod p}{r}f(\lfloor n/p\rfloor,\lfloor(k-r)/p\rfloor)\\&=\sum\limits_{r=0}^{p-1}\dbinom{n\bmod p}{r}f(\lfloor n/p\rfloor,\lfloor k/p\rfloor-1)+\sum\limits_{r=0}^{k\bmod p}\dbinom{n\bmod p}{r}\dbinom{\lfloor n/p\rfloor}{\lfloor k/p\rfloor}\\&=f(n\bmod p,p-1)f(\lfloor n/p\rfloor,\lfloor k/p\rfloor-1)+\dbinom{\lfloor n/p\rfloor}{\lfloor k/p\rfloor}f(n\bmod p,k\bmod p)\end{aligned}\)

递归计算即可. 注意各种边界.

6. P8207 [THUPC2022 初赛] 最小公倍树

数论优化建图题.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章