CF438E The Child and Binary Tree
Link
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}}
\]
于是就可以求了。