题解:[ARC106F] Figures
先钦定编号为 \(i\) 的点最终的度数为 \(a_i\),对 prüfer 序列计数,此时答案为:
\[\sum_{{\sum a_i = 2(n-1)}} \binom{n-2}{a_1-1,a_2-1,\dots ,a_n-1} = \sum_{{\sum a_i = 2(n-1)}} \frac{\left ( n-2 \right )! }{ {\textstyle \prod_{i=1}^{n}}(a_i-1)! }
\]
接下来加入每个点度数最高为 \(d_i\) 的限制,由于我们区分每个孔连接的顺序,答案为:
\[\sum_{{\sum a_i = 2(n-1)},a_i \leq d_i } \frac{\left ( n-2 \right )! }{ {\textstyle \prod_{i=1}^{n}}(a_i-1)! } \times \prod_{i=1}^{n} A_{d_i}^{a_i}=
\sum_{{\sum a_i = 2(n-1)},a_i \leq d_i } \frac{\left ( n-2 \right )! }{ {\textstyle \prod_{i=1}^{n}}(a_i-1)! } \times \prod_{i=1}^{n} d_i^{\underline{a_i}}\]
由于 $ {\textstyle \sum_{i=1}^{n} a_i = 2(n-1)} $,考虑使用 GF。
把 \((n-2)!\) 提出来,再设 \(F_i(x)\) 是点 \(i\) 对应的生成函数,有:
\[F_i(x)=\sum_{k=1}^{+\infty } \frac{d_i^{\underline{k}}}{(k-1)!} x^k
\]
\[=\sum_{k=1}^{+\infty } \frac{d_i!}{(k-1)! (d_i-k)!} x^k
\]
\[=\sum_{k=1}^{+\infty } d_i \cdot \binom{d_i-1}{k-1} x^k
\]
\[=d_i \cdot x\sum_{k=1}^{+\infty } \binom{d_i-1}{k-1} x^{k-1}
\]
\[=d_i \cdot x\sum_{k=0}^{+\infty } \binom{d_i-1}{k} x^{k}
\]
\[=d_i \cdot x(x+1)^{d_i-1}
\]
那么答案的生成函数为:
\[G(x)=\prod_{i=1}^{n} F_i(x) = \prod_{i=1}^{n} d_i \cdot x(x+1)^{d_i-1}
\]
\[=\prod_{i=1}^{n} d_i \cdot x^n(x+1)^{\sum (d_j-1)}
\]
最终答案为:
\[(n-2)! \cdot \left [ x^{2(n-1)} \right ] \prod_{i=1}^{n} d_i \cdot x^n(x+1)^{\sum (d_j-1)}
\]
\[=(n-2)! \prod_{i=1}^{n} d_i \cdot \left [ x^{n-2} \right ] (x+1)^{\sum (d_j-1)}
\]
\[=(n-2)! \prod_{i=1}^{n} d_i \cdot \binom{\sum (d_j-1)}{n-2}
\]
\[=\prod_{i=1}^{n} d_i (\sum (d_j-1))^{\underline{n-2}} = \prod_{i=1}^{n} d_i \times \prod_{i=0}^{n-3} \left ( \left ( {\textstyle \sum_{j=1}^{n} d_j} \right) -n-i \right )
\]
不难 \(O(n)\) 计算。

浙公网安备 33010602011771号