【题解】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)\)

posted @ 2026-08-27 23:43  TallBanana  阅读(10)  评论(0)    收藏  举报