环上计数+计数转概率:ABC318EX
本文搬运自本人高中时期CSDN博客,若图片加载不出来,可到原文查看:https://blog.csdn.net/zhangtingxiqwq/article/details/132650494
https://atcoder.jp/contests/abc318/tasks/abc318_h
先转为概率, fi 表示 i 个点两人都AC的概率, gi 表示恰好一个人AC的概率。
两个人都AC,只能为全部自环, fi=i!1
现在求 gn 。然后有个定理, n 个点形成的图形, n 所在的环的大小在 [1,n] 内随机生成。(很好证明)
然后考虑枚举 n 所在的环大小为 i ,先考虑由 f 推向 g 的情况。剩下 n−i 个点两个人都AC,所以为 fn−i 。那么当前这个环只能有一个人AC,所以环大小至少为2。
此时谁AC都可以,所以最小的那条边有两个选择,即 i2 。因此 f→g 的答案为:
gn=n∑i=2ni2fn−i
现在考虑 g→g 的贡献。之后的贡献为 gn−i 。发现他已经保证了恰好一个人AC,而且已经确定了这个人是谁。那么当前这个环的选择唯一,但大小可以使1,因为即使两个人在这个环内同时AC也无所谓。
gn=n∑i=1ni1gn−i
结合起来就是:
gn=n∑i=1n(i2fn−i(i=1)+i1gn−i)
令 ai=i2 且 a1=0 , bi=i1
然后上面就变成了:
gn=n∑i=1n(aifn−i+bign−i)
前面NTT,后面是个分治NTT即可。