【题解】P3711 仓鼠的数学题
考虑 \(F(x)=\sum_{i=0}^n a_ix^i=\sum_{i=0}^{n} b_ix^{\underline i}=\sum_{i=0}^{n} b_ii!\binom{x}{i}\)。
转为求 \(\sum_{k=0}^{n} b_kk!\sum_{i=0}^x \binom{i}{k}=\sum_{k=0}^{n} b_kk! \binom{x+1}{k+1}=(x+1)\sum_{k=0}^{n} \frac{b_k}{k+1}k!\binom{x}{k}\)。
也就是给 \(b_k\) 点除 \(k+1\)。
总复杂度 \(O(n\log ^2 n)\)。
太菜了。
\(\sum_{i=0}^x i^k=\sum_{i=0}^x [\frac{y^k}{k!}] e^{ix}=[\frac{y^k}{k!}] \frac{1-e^{(x+1)y}}{1-e^y}\)。
\(ans=\sum_{k=0}^n a_k [\frac{y^k}{k!}] \frac{1-e^{(x+1)y}}{1-e^y}\)。
提取 \(i>0,[(x+1)^i]\):\([(x+1)^i]ans=\sum_{k=0}^{n} a_k[\frac{y^k}{k!}]\frac{-\frac{y^{i-1}}{i!}}{\frac{1-e^y}{y}}=-\frac{1}{i!}\sum_{k=0}^n a_k[\frac{y^{k-i+1}}{k!}]\frac{y}{1-e^y}\)。
可以先求出后面这个 \(\frac{y}{e^y-1}=G(y)\)。
那么有 \([(x+1)^i]ans=\frac{1}{i!}\sum_{k=0} a_kk! [y^{k-i+1}]G(y)\),所以做一下卷积即可求出 \([(x+1)^i]ans\),再做差卷积就可以求出答案了。
复杂度 \(O(n\log n)\)。
-
下降幂多项式求点值:
\(F(x)=\sum_{i=0}^n a_ix^{\underline i}=x!\sum_{i=0}^n \frac{a_i}{(x-i)!}\)。
也就是看作普通幂多项式后,卷上 \(\exp\),得到点值 EGF。 -
下降幂多项式插值:
反过来,对于点值的 EGF 除以 \(\exp\),得到普通幂多项式形式。 -
普通幂多项式转下降幂多项式:
分治,设我们已经求出了 \(g_L,g_R\) 分别作为下降幂多项式,现在要求 \(g_L+x^m\times g_R\),可以求 \(x^m\) 的点值和 \(g_R\) 的点值,然后点积后转回去。
\(O(n\log ^2 n)\)。 -
下降幂多项式转普通幂多项式:
令 \(g_{l,r}=\prod_{i=l}^{r-1} (x-i)\),\(f_{l,r}=\sum_{i=l}^{r} a_ig_{l,i}\),答案是 \(f_{0,n}\)。
分治,\(f_{l,r}=f_{l,mid}+g_{l,mid}f_{mid+1,r}\)。
\(O(n\log ^2 n)\)。
浙公网安备 33010602011771号