子集计数
题目描述
求在集合 {\(1,2,3,...,n\)} 中选一个大小为 \(m\) 的子集,子集和在模 \(n\) 意义下为 \(k\) 的方案模 \(998244353\)。
\(1\le m,k\le n\le 998244353\)
神仙反演
Orz yww
首先写出答案的二元生成函数
\[F(x,y)=\prod_{i=1}^{n}(1+x^iy)
\]
那么我们最终要求的即
\[Ans=\sum_{i=1}^\infty [i\%n==k]F(x,y)[x^iy^m]
\]
不难想到单位根反演:
\[Ans=\sum_{i=1}^\infty [n\mid(i-k)]F(x,y)[x^iy^m]\\
=\frac{1}{n}\sum_{i=1}^\infty \sum_{j=1}^nw_n^{j(i-k)} F(x,y)[x^iy^m]
\]
稍加整理可知
\[Ans=\frac{1}{n}\sum_{j=1}^nw_n^{-jk}(\prod_{i=1}^n(1+w_n^{ij}y)[y^m])
\]
(不知道为何)枚举 \(gcd(n,j)=d\)
\[Ans=\frac{1}{n}\sum_{d|n}\sum_{j=1}^{n/d}[(j,\frac{n}{d})=1]w_n^{-jdk}(\prod_{i=1}^n(1+w_n^{ijd}y)[y^m])
\]
注意到单位根的幂它的右上和右下是可以通分的,那么我们进行操作,
\[Ans=\frac{1}{n}\sum_{d|n}\sum_{j=1}^{n/d}[(j,\frac{n}{d})=1]w_{n/d}^{-jk}(\prod_{i=1}^n(1+w_{n/d}^{ij}y)[y^m])\\
=\frac{1}{n}\sum_{d|n}\sum_{j=1}^{n/d}[(j,\frac{n}{d})=1]w_{n/d}^{-jk}(\prod_{i=1}^{n/d}(1+w_{n/d}^{ij}y))^d[y^m] \qquad \bigstar
\]
考虑分圆多项式的根
\[x^n-1=\prod_{i=1}^n(x-w_n^i)
\]
把 \(x=-\frac{1}{y}\) 代入上式,
\[(-\frac{1}{y})^n-1=\prod_{i=1}^n(-\frac{1}{y}-w_n^i)\\
1-(-y)^n=\prod_{i=1}^n(1+w_n^iy)
\]
用上式去代入 \(\bigstar\) 式,
\[Ans=\frac{1}{n}\sum_{d|n}\sum_{j=1}^{n/d}[(j,\frac{n}{d})=1]w_{n/d}^{-jk}(1-(-y)^{\frac{n}{d}})^d[y^m]\\
=\frac{1}{n}\sum_{d|n}(1-(-y)^{\frac{n}{d}})^d[y^m]\sum_{j=1}^{n/d}[(j,\frac{n}{d})=1]w_{n/d}^{-jk}
\]
对后面的方括号莫比乌斯反演,
\[Ans=\frac{1}{n}\sum_{d|n}(1-(-y)^{\frac{n}{d}})^d[y^m]\sum_{e|\frac{n}{d}}\mu(e)\sum_{j=1}^{n/de}w_{n/d}^{-jek}\\
=\frac{1}{n}\sum_{d|n}(1-(-y)^{\frac{n}{d}})^d[y^m]\sum_{e|\frac{n}{d}}\mu(e)\sum_{j=1}^{n/de}w_{n/de}^{-jk}
\]
注意到最后一个求和号是单位根反演出来的形式,故拼凑回去得:
\[Ans=\frac{1}{n}\sum_{d|n}(1-(-y)^{\frac{n}{d}})^d[y^m]\sum_{e|\frac{n}{d}}\mu(e) {\left \lfloor \frac{n}{de} \right \rfloor} [\frac{n}{de}\mid k]
\]
暴力即可。

浙公网安备 33010602011771号