CF438E The Child and Binary Tree

Description

有长为 \(n\) 的正整数数列 \(\{c_n\}\) ,且 \(c_n\) 互异。现需构造一棵二叉树,点权均为 \(\{c_n\}\) 中的数。给定 \(m\),对于每个正整数 \(k\leq m\),求点权和为 \(k\) 的二叉树个数。

Solution

容易想到先搞个递推式,然后再化简。令 \(f_i\) 表示权值和为 \(i\) 的二叉树个数,\(f_0=1\),其 OGF 为 \(F(x)\),那么对于 \(m\geq 1\),有

\[\begin{align} f_m&=\sum_{i=1}^n \sum_{j=0}^{m-a_i} f_j\times f_{m-a_i-j} \\ &=\sum_{i=1}^n [x^{m-a_i}] F^2(x) \\ &=[x^m] F^2(x) \sum_{i=1}^n x^{a_i}\\ \end{align} \]

\(G(x)=\sum_{i=1}^n x_{a_i}\)\(f_m=[x^m]G(x)F^2(x)\),又 \(f_0=1\),那么

\[F(x)=1+G(x)F^2(x) \]

解得两个根

\[F_1=\frac{1+\sqrt{1-4G}}{2G},F_2=\frac{1-\sqrt{1-4G}}{2G} \]

又要满足初始值 \(f_0=1\),即 \(F\) 泰勒展开第零项,那么

\[\lim_{x\to 0} F(x)=1 \]

发现只有 \(F_2\) 符合条件,那么 \(F=\frac{1-\sqrt{1-4G}}{2G}\)

但是 \(G(x)\)\(g_0\neq 1\),不存在逆。于是有一个很神奇的方法,即分母无理化。

\[F=\frac{1-\sqrt{1-4G}}{2G}=\frac{2}{1+\sqrt{1-4G}} \]

于是就可以求了。

posted @ 2021-04-15 17:59  Kreap  阅读(61)  评论(0编辑  收藏  举报