【做题记录】TJOI2015 概率论

  • \(\text{TJOI2015}\)】概率论

    • 算法:生成函数

题目:

对于一棵随机生成的 \(n\) 个结点的有根二叉树(所有互相不同构的形态等概率出现),求它的叶子节点数的期望是多少。

题解:

\(p(n)\) 表示有 \(n\) 个节点的二叉树的个数,显然 \(p(0) = 1\)

设 $f(n) $表示 \(n\) 个节点的二叉树叶子节点的个数,显然 \(f_0 = 0,f_1 = 1\)

那么 \(ans = \dfrac{f_i}{p_i}\)

  • 对于 \(p_i\),由于左右的子树都是二叉树,所以枚举左右子树的点数:

\[p_n = \sum_{i = 0}^{n - 1}p_i p_{n - i - 1} \]

即卡特兰数,通项为 \(\dfrac{\begin{pmatrix}2n\\n\end{pmatrix}}{n + 1}\)

  • 对于 \(f_i\),枚举左右子树的大小,由 \(p\) 推出,且左右对称所以最后答案 \(\times 2\)

\[f_n = 2\sum_{i = 0}^{n - 1}f_i\times p_{n - i - 1} \]

不妨设 \(A(x)\)\(p\) 的生成函数,\(B(x)\)\(f\) 的生成函数。

易知

\[A(x)=xA^2(x) + 1,B(x) = 2xA(x)B(x) + x \]

对于 \(A(x)\) 它的封闭形式为 \(\dfrac{1\pm\sqrt{1-4x}}{2x}\)。(求根公式)

检验,易知 \(\dfrac{1+\sqrt{1-4x}}{2x}\) 不行,舍去。

\(B(x) = x \times (1 - 4x)^{-0.5}\)

\[\therefore (xA(x))'=\frac 1{\sqrt{1-4x}}=\dfrac{B(x)}x \]

\(xA(x)\)的每一项求导,

\((n + 1)p_nx^n\)

\(=\dfrac{f_{n + 1}x^{n + 1}}{x} = f_{n + 1}x^n\)

\(\therefore f_{n + 1} = (n+1)p_n\)

\(\therefore f_n=p_{n-1}\)

\[\therefore ans=\dfrac{n(n+1)}{2(2n-1)} \]

posted @ 2022-01-07 19:28  trsins  阅读(5)  评论(0编辑  收藏  举报