标签:复杂 存在 个数 omega 快速 应用 公式 mat 形式
\[ [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}\) ,可由二项式定理简化
标签:复杂 存在 个数 omega 快速 应用 公式 mat 形式
原文地址:https://www.cnblogs.com/zhongzero/p/11790370.html