骗个访问量。。
A:取石子
将点 x 与点 x / prime 连边,那么这个图可以由指数之和的奇偶性来划分成一个二分图。
接下来考虑推广阶梯 NIM (或者这原本就是阶梯 NIM ?),必胜当且仅当奇数层的点上的石子数的异或和不为 0 ,所以进行一下计数就好了。
B:重返现世
如何处理 \(k = n\) ?考虑 \(\text{max-min}\) 容斥,然后 DP 。网上资料很多,这里不赘述。
考虑将 \(\text{max-min}\) 推广到 \(\text{kthmax-min}\) 容斥?
\[ \text{kthmax(S)} = \sum_{T \subset S} \min(T) f(|T|) \]
对第 \(x+1\) 大的元素,建立实际应该计算的次数与上述式子中计算的次数的联系,
\[ [x + 1 = k] = \sum \binom{x}{i} f(i+1) \]
\[ f(x) = (-1) ^ {x - k} \binom{x - 1}{k - 1} \]
\[ \text{kthmax} (S) = \sum_{T \subset S} \frac{m}{\sum_{i \in S} p_i} (-1) ^ {|T| - k} \binom{|T| - 1}{k - 1} \]
然后考虑设计一个 DP ,设 \(f(i, j, k)\) 表示处理了前 \(i\) 位,\(\sum_{i \in S} p_i = j\) ,组合数的下指标为 \(k\) 时的
\[ \sum_T (-1) ^ {|T| - k} \binom{|T| - 1}{k - 1} \]
边界和转移都需要用到一点组合数的知识。
C:画画
比赛进行的时候,我去 OEIS 上找到了前 60 项。。。早知我出到 65 项,测了第 61 项只需要跑两秒。。。
首先大家可以做做 BZOJ 1408 ,再来看这个问题。
这个问题就同样是枚举分拆数,然后瞎计数。我自己的做法是大力分析一下,这个分析过程比较复杂就不赘述了;或者也可以直接 \(O(n ^ 6)\) 进行高斯消元,而两者的本质是一样的,因为一张图的线性基就是一个森林。
出完这道题的时候发现,的确可以做到 \(n\) 个点的无标号连通欧拉图计数,设上述答案为 \(g(n)\) ,\(n\) 个点的无标号连通欧拉图的个数为 \(f(n)\) ,构建普通生成函数,则
\[ G(x) = \prod \frac{1}{(1 - x ^ i) ^ {f(i)}} \]
\[ \ln G(x) = \sum_i - f(i) \ln (1 - x ^ i) = \sum_i f(i) \sum_{j \ge 1} \frac{x ^ {ij}}{j} = \sum_{t \ge 1} x ^ t (\sum_{ij = t} \frac{f(i)}{j}) \]
D:信息传递
考虑 \(f\) 的某个轮换 \(s\) ,在 \(n\) 次置换下会变成什么?
那么,可以将多少个 \(f ^ n\) 的大小为 \(s\) 的轮换进行合并,以及合并的方案数?
之后对每种不同的大小求 \(exp\) ,然后相乘即可。