[51nod 1822]序列求和

\(k\leq 200000\)

考虑转化成枚举 \(k\) 的形式

我们错位相减!

\[A_k=\sum_{i=1}^N i^K\times R^i \\ RA_k=\sum_{i=2}^{N+1} (i-1)^KR^i \\ (R-1)A_k=N^kR^{N+1}+\sum_{i=1}^{N}[(i-1)^k-i^k]R^i \]

二项式展开!

\[(R-1)A_k=N^kR^{N+1}+\sum_{i=1}^{N}[\sum_{j=0}^k(-1)^{k-j}i^{j}-i^k]R^i \\ =N^kR^{N+1}+\sum_{i=1}^{N}\sum_{j=0}^{k-1}\binom{k}{j}(-1)^{k-j}i^{j}R^i \\ =N^kR^{N+1}+\sum_{j=0}^{k-1}\binom{k}{j}(-1)^{k-j}\sum_{i=1}^{N}i^{j}R^i \\ =N^kR^{N+1}+\sum_{j=0}^{k-1}\binom{k}{j}(-1)^{k-j}A_j \]

这个时候我们递归计算可以得到 \(O(k^2)\) 的复杂度

考虑能否插值出一个 \(k\) 次多项式?

先暴力展开第零项

\[A_0=\sum_{i=1}^N \times R^i \]

等比数列求和公式套一下

\[S_n=\frac{a_1(1-q^n)}{1-q} \\ A_0=\frac{R(1-R^n)}{1-R}=\frac{R^{n+1}-R}{R-1}=R^{N + 1}\cdot (\frac{1}{R - 1}) - R\cdot (\frac{1}{R - 1}) \]

暴力展开第一项

\[A_1=\frac{NR^{N+1}-A_0}{R-1} \\ A_1=\frac{NR^{N+1}-\frac{R^{n+1}-R}{R-1}}{R-1} \\ A_1=\frac{NR^{N+1}}{R-1}-\frac{\frac{R^{n+1}-R}{R-1}}{R-1} \\ A_1=\frac{NR^{N+1}}{R-1}-\frac{R^{n+1}-R}{(R-1)^2} \\ A_1=R^{N + 1}(\frac{N}{R-1}-\frac{1}{(R-1)^2}) + R\times \frac{1}{(R-1)^2} \]

我们的 \(A_k\) 可以插值,次数可以保证,我们直接把前 \(O(k)\) 项求出来插值,线性拉插一下就好了

posted @ 2022-06-22 16:15  Authentic_k  阅读(61)  评论(1编辑  收藏  举报