1. 程式人生 > >CF932E Team Work

CF932E Team Work

題目分析

給定\(n(n\le10^9),k(k\le 5000)\),求:
\[ \sum\limits_{i=0}^n\binom{n}{i}\cdot i^k \]

利用第二類斯特林數對\(i^k\)進行化簡。
\[ \begin{aligned} ans&=\sum_{i=0}^n\binom{n}{i}i^k\\ &=\sum_{i=0}^n\binom{n}{i}\sum_{j=0}^i\binom{i}{j}\begin{Bmatrix}k\\j\end{Bmatrix}j!\\ &=\sum_{j=0}^n\sum_{i=j}^n\binom{n}{i}\binom{i}{j}\begin{Bmatrix}k\\j\end{Bmatrix}j!\\ &=\sum_{j=0}^n\binom{n}{j}\begin{Bmatrix}k\\j\end{Bmatrix}j!\sum_{i=j}^n\binom{n-j}{n-i}\\ &=\sum_{j=0}^n\binom{n}{j}\begin{Bmatrix}k\\j\end{Bmatrix}j!\sum_{i=0}^{n-j}\binom{n-j}{i}\\ &=\sum_{j=0}^n\binom{n}{j}\begin{Bmatrix}k\\j\end{Bmatrix}j!\cdot2^{n-j}\\ &=\sum_{j=0}^k\binom{n}{j}\begin{Bmatrix}k\\j\end{Bmatrix}j!\cdot2^{n-j} \end{aligned} \]

\(O(k^2)​\)遞推或者\(O(klogk)​\)NTT算出斯特林數後,就可以直接計算答案了。