森林生成树计数

给定 \(n\) 个点 \(k\) 棵树的森林,第 \(i\) 棵树的大小为 \(s_i\),要求加入 \(k-1\) 条边,使之连通,求方案数。

设第 \(i\) 棵树的度数为 \(d_i\),则对于给定 \(d_1,d_2,\cdots,d_k\),根据 prufer 序列,进行可重集排列
\[ \begin{pmatrix} k - 2\\ d_1-1,d_2-1,\cdots,d_k-1 \end{pmatrix}= \frac{(k-2)!}{\prod_i(d_i-1)!} \]
又每棵树的连接方式有 \(s_i^{d_i}\) 种,有
\[ \begin{pmatrix} k - 2\\ d_1-1,d_2-1,\cdots,d_k-1 \end{pmatrix} \prod_{i}s_i^{d_i} \]
现在枚举 \(\{d_i\}\),可得
\[ Cnt= \sum_{\substack{\sum_{i=1}^kd_i=2k-2\\d_i\ge 1}} \begin{pmatrix} k - 2\\ d_1-1,d_2-1,\cdots,d_k-1 \end{pmatrix} \prod_{i}s_i^{d_i} \]
又因为多元二项式定理
\[ (\sum_{i=1}^nx_i)^p= \sum_{\substack{\sum_{i=1}^nc_i=p\\c_i\ge 1}} \begin{pmatrix} p\\ c_1,c_2,\cdots,c_n \end{pmatrix} \prod_{i=1}^nx_i^{c_i} \]
可化简为
\[ n^{k-2}\prod_{i=1}^ks_i \]

猜你喜欢

转载自www.cnblogs.com/Ryedii-blog/p/12311266.html
今日推荐