首页 > 其他 > 详细

[TJOI2015] 概率论 - Catalan数

时间:2020-02-25 22:04:15      阅读:64      评论:0      收藏:0      [点我收藏+]

一棵随机生成的 \(n\) 个结点的有根二叉树(所有互相不同构的形态等概率出现)的叶子节点数的期望。\(n \leq 10^9\)

Solution

\(n\) 个点的二叉树个数即 Catalan 数 \(f(n)=\frac{C_{2n}^n}{n+1}\)

\(g(n)\)\(n\) 个点的所有二叉树的叶子个数和,找规律得 \(g(n)=nf(n-1)\)

Proof. 对于 \(n\) 个点,\(k\) 个叶子的二叉树,删掉任意一个叶子可以得到 \(k\)\(n-1\) 个点的二叉树,这些二叉树每个有 \(n\) 个位置可以挂一个新的叶子

所求为
\[ \frac{g_n}{f_n}=\frac{nf_{n-1}}{f_n}=\frac{n(n+1)}{2(2n-1)} \]

#include <bits/stdc++.h>
using namespace std;
double n;
signed main() {
    cin>>n;
    printf("%.10lf\n",n*(n+1)/2/(2*n-1));
}

[TJOI2015] 概率论 - Catalan数

原文:https://www.cnblogs.com/mollnn/p/12363942.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!