题解 省选联考2020 组合数问题

我们要求的是

\[\sum_{k=0}^n f(k) \times x^k \times \binom{n}{k} \]

把普通多项式 \(f(k)=\sum_{i=0}^m a_ik^i\)转换成下降幂多项式\(g(k)=\sum_{i=0}^m b_ik^{\underline{i}}\)

那么原式就是 :

\[\sum_{k=0}^n \sum_{i=0}^m b_ik^{\underline{i}} \times x^k \times \binom{n}{k} \]

有一个性质是 :

\[\binom{n}{k} \times k^{\underline{i}} = \binom{n-i}{k-i} \times n^{\underline{i}} \]

于是原式变成 :

\[\sum_{k=0}^n \sum_{i=0}^m b_i \times x^k \times \binom{n-i}{k-i} \times n^{\underline{i}} \]

\(b_i\)提到前面 :

\[\sum_{i=0}^m b_i \sum_{k=0}^n x^k \times \binom{n-i}{k-i} \times n^{\underline{i}} \]

\(i>k\)时后面的为0,所以枚举\(k\)可以转化为枚举\(k-i\),就相当于:

\[\sum_{i=0}^m b_i \sum_{k=0}^{n-i} x^{k+i} \times \binom{n-i}{k} \times n^{\underline{i}} \]

整理系数得 :

\[\sum_{i=0}^m b_ix^in^{\underline{i}} \sum_{k=0}^{n-i} x^k \times \binom{n-i}{k} \]

发现后面添上1是二项式定理的展开(同subtask 4~8 \(m=0\)),式子变成 :

\[\sum_{i=0}^m b_ix^in^{\underline{i}} (x+1)^{n-i} \]

现在问题在于求\(b_i\),就是普通多项式转下降幂多项式。

因为\(x^k = \sum_{i=0}^k x^{\underline{i}} \times S2(k,i)\)\(S2\)表示第二类斯特林数。

所以 :

\[\sum_{i=0}^m a_ik^i = \sum_{i=0}^m a_i \sum_{j=0}^i k^{\underline{j}} \times S2(i,j) \]

相当于 :

\[\sum_{i=0}^m k^{\underline{i}} \sum_{j=i}^m a_j \times S2(j,i) \]

那么 :

\[b_i=\sum_{j=i}^m a_j \times S2(j,i) \]

可以\(O(m^2)\)预处理\(b_i\),然后代回原式\(O(m)\)计算。

posted @ 2020-06-28 12:18  kylin_xy  阅读(178)  评论(0编辑  收藏  举报