Loading

简单反演

二项式反演

用于求解一类计数问题,可以认为是多步容斥的推广结论。

通常题目要求 “恰好有 \(k\) 个元素满足条件” 的方案总数 \(F(k)\),此时如果钦定至少 \(k\) 个元素满足条件的方案数 \(G(k)\) 容易求出:

因为有 \(G(k) = \sum\limits_{i = k}^n {i \choose k} F(i)\),可以利用二项式反演通过 \(G(k)\) 求出 \(F(k)\).

也可以对于符合其形式的函数进行互相计算。

  • 形式一:\(F(n) = \sum\limits_{i = 0}^n (-1)^i G(i) \Leftrightarrow G(n) = \sum\limits_{i = 0}^n (-1)^i F(i)\).

  • 形式二:\(F(n) = \sum\limits_{i = 0}^n {n \choose i} G(i) \Leftrightarrow G(n) = \sum\limits_{i = 0}^n (-1)^{n - i} {n \choose i} F(i)\).

  • 形式三:\(F(n) = \sum\limits_{i = n}^m {i \choose n} G(i) \Leftrightarrow G(n) = \sum\limits_{i = n}^m (-1)^{i - n} {i \choose n} F(i)\).

  • 高维二项式反演:\(F(N, M) = \sum\limits_{i = n}^N \sum\limits_{j = m}^{M} {N \choose i} {M \choose j} G(i, j) \Leftrightarrow G(N, M) = \sum\limits_{i = n}^N \sum\limits_{j = m}^{M} (-1)^{(N - i) + (M - j)} {N \choose i} {M \choose j} F(i, j)\).

    例题:【题解】CF997C Sky Full of Stars

关于上面的计数问题,有另一种 \(O(n^2)\) 的容斥是 \(F(i) = G(i) - \sum\limits_{j = i + 1}^n {j \choose i} G(j)\).

例题:P4859 已经没有什么好害怕的了

以及一些根据二项式定理推广出的容斥问题:

【题解】XSY2813 - 前夕

单位根反演

概念

单位根反演,顾名思义是基于单位根性质的反演,用于处理和取模有关的问题,或者在有关 FFT 的题目中进行特殊的构造(虽然还没做过)。

通常用单位根在模意义下的替代品原根。

反正没见过的模数原根统一猜 3

思路

  • 性质:\([n \mid a] = \frac{1}{n} \sum\limits_{k = 0}^{n - 1} w_n^{ak}\).

可以导出:

  • 单位根反演:\([a \equiv b \pmod n] = [a - b \equiv 0 \pmod n] = \frac{1}{n} \sum\limits_{k = 0}^{n - 1} w_n^{(a - b) k} = \frac{1}{n} \sum\limits_{k = 0}^{n - 1} w_n^{ak} w_n^{-bk}\).

通常当模数较小时可以考虑枚举余数,然后套上单位根反演。

例题:LOJ #6485. LJJ 学二项式定理

\(\sum\limits_{i = 0}^n {n \choose i} s^i a_{i \bmod 4}\).

考虑枚举 \(i \bmod 4\) 的余数,化简得 \(\sum\limits_{i = 0}^n {n \choose i} s^i \sum\limits_{j = 0}^{3} [i \equiv j \pmod 4] a_j\).

根据单位根反演可知 \(\sum\limits_{i = 0}^n {n \choose i} s^i \frac{1}{4} \sum\limits_{j = 0}^3 a_j \sum\limits_{k = 0}^{3} w_4^{(i - j) k}\).

拆开单位根得到 \(\sum\limits_{i = 0}^n {n \choose i} s^i \frac{1}{4} \sum\limits_{j = 0}^3 a_j \sum\limits_{k = 0}^{3} w_4^{ik} w_4^{-jk}\).

交换求和顺序再整理得 \(\frac{1}{4} \sum\limits_{j = 0}^3 a_j \sum\limits_{k = 0}^3 w_4^{-jk} \sum\limits_{i = 0}^n {n \choose i} s^i\).

后面的和式可以二项式定理得 \(\frac{1}{4} \sum\limits_{j = 0}^3 a_j \sum\limits_{k = 0}^3 w_4^{-jk} (s w_4^k + 1)^n\).

posted @ 2023-02-14 18:15  kymru  阅读(54)  评论(0编辑  收藏  举报