代码可以看 的,反正我都是抄的他的
Missing a Point
把出现次数为奇数的行列找出来
Chefina and Swaps
贪心,注意可以将一个很小的换过来再换回去
Doctor Chef
注意到我们的策略就是不断把 搞成最大值,中途顺便搞定一些国家
没有搞定的国家可以通过一次操作搞定
考虑这么一个 ,
表示
的贡献最小值(其中没有搞定的有 1 的贡献)
注意到并不需要对每个 转移,我们枚举
,那么一定会选择
它的最大的
LCM Constraints
分析一下发现,一个点要么选择出边的最小值,要么 最小值
暴力 搜索,考虑折半,将两边搜出来
考虑一边的状态为 ,另一边相当于是钦定一些点选择最小值
那么就是要统计其超集的贡献,做子集卷积即可
Expected Repetitions
考虑枚举一个串 以及它的周期
需要满足 ,我们发现可以枚举
,它的贡献是
拆成前缀和
注意到我们只需要统计 以及
我们用 ,线段树合并的时候把贡献算上即可
Weird Product
我们算出 ,最后除以
这个形式可以构造
Expected Spanning Trees
考虑对每条边构造 EGF,分别是
对于生成树上的边,我们用矩阵树定理,将其放在行列式中计算
对于不在生成树上的边,我们有 的贡献
即 ,可以将行列式插值出来
,最后是
,可以
Easy Geo xD
令 ,考虑 枚举
,并令
,并将
除去
那么问题变成求
令 ,那么个数即为
那么就是算(令 )
前面就是 ,可以解方程得到(令
,
同除
)
考虑最小解 ,以及
,令
那么之后的解就是 ,令
用类欧几里得解决