单位根反演

公式

\[[k|i]=\frac{1}{k} \sum_{j=0}^{k-1}(\omega_k^i)^j \]

应用

\[\begin{split} ans& =\sum_{i=0}^n f_i[k|i]\\& =\sum_{i=0}^n f_i \frac{1}{k} \sum_{j=0}^{k-1}(\omega_k^i)^j\\& =\frac{1}{k} \sum_{j=0}^{k-1} \sum_{i=0}^n f_i (\omega_k^i)^j\\& =\frac{1}{k} \sum_{j=0}^{k-1} \sum_{i=0}^n f_i (\omega_k^j)^i \end{split} \]

要求:

1.在模意义下,存在一个数\(x\),满足\(x\)的阶为\(k\) (一般题目给定满足: \(p\) 是质数,且 \(k\)\(p-1\) 的因数)

2.\(\sum_{i=0}^n f_i (\omega_k^j)^i\)可以快速算出,且\(k\)较小

复杂度为\(O(k*F)\)\(F\)为算\(\sum_{i=0}^n f_i (\omega_k^j)^i\) 的时间

通常\(f_i\) 的形式为 \(C_n^i A^i B^{n-i}\) ,可由二项式定理简化

posted @ 2019-11-04 09:08  zhongzero  阅读(131)  评论(2)    收藏  举报