0
点赞
收藏
分享

微信扫一扫

Codechef July Challenge 简要题解

elvinyang 2022-08-16 阅读 97


代码可以看 的,反正我都是抄的他的 

Missing a Point

把出现次数为奇数的行列找出来

Chefina and Swaps

贪心,注意可以将一个很小的换过来再换回去

Doctor Chef

注意到我们的策略就是不断把 搞成最大值,中途顺便搞定一些国家
没有搞定的国家可以通过一次操作搞定
考虑这么一个 表示 的贡献最小值(其中没有搞定的有 1 的贡献)

注意到并不需要对每个 转移,我们枚举 ,那么一定会选择 它的最大的

LCM Constraints

分析一下发现,一个点要么选择出边的最小值,要么 最小值
暴力 搜索,考虑折半,将两边搜出来
考虑一边的状态为 ,另一边相当于是钦定一些点选择最小值
那么就是要统计其超集的贡献,做子集卷积即可

Expected Repetitions

考虑枚举一个串 以及它的周期
需要满足 ,我们发现可以枚举 ,它的贡献是
拆成前缀和
注意到我们只需要统计 以及
我们用 ,线段树合并的时候把贡献算上即可

Weird Product

我们算出 ,最后除以
这个形式可以构造

​​Expected Spanning Trees​​

考虑对每条边构造 EGF,分别是
对于生成树上的边,我们用矩阵树定理,将其放在行列式中计算
对于不在生成树上的边,我们有 的贡献
,可以将行列式插值出来 ,最后是
,可以

​​Easy Geo xD​​


,考虑 枚举 ,并令 ,并将 除去
那么问题变成求
,那么个数即为
那么就是算(令

前面就是 ,可以解方程得到(令 同除
考虑最小解 ,以及 ,令
那么之后的解就是 ,令

用类欧几里得解决


举报

相关推荐

0 条评论