BZOJ 4001 概率论

设\(f_i\)表示i个点的二叉树方案数

立刻有\(f_n = \sum_{i=0}^{n-1} f_i f_{n-i-1}\)

设\(F(x)为序列f的生成函数,有F(x)^2 = \sum_{i=0}^{+\infty} \sum_{i+j = n} f_i f_j x^i\)

可设\(g(x) = f(x+1) = \sum_{i+j = x} f_i f_j\)(\(G(x)为序列g的生成函数\))

有: \(G(x) = F(x)^2\), 又有\(F(x) = xG(x)+f(0)\),所以解得\(F(x) = (2x)^{-1} (1-(1-4x)^{\frac{1}{2}})\)

有二项式定理展开得\(F(x) = (2x)^{-1} (1-\sum_{i=0}^{+\infty} \dbinom{\frac{1}{2}}{i} (-4)^i)x^i)\)

考虑化简\(\sum_{i=0}^{+\infty} \dbinom{\frac{1}{2}}{i} (-4)^i\)

由组合数定义可知, \(\dbinom{\frac{1}{2}}{i} (-4)^i = -\sum_{i=0}^{+\infty} (2i-1)^{-1} \dbinom{2i}{i}\)

原式化简为\(F(x) = (2x)^{-1} (1+\sum_{i=0}^{+\infty} (2i-1)^{-1} \dbinom{2i}{i})x^i)\),有后式在x=0时取-1,消去前面的1,然后消去2x,可化简为\(F(x) = \sum_{i=0}^{+\infty} \frac{1}{4i+2} \dbinom{2i+2}{i+1}x^i\),拆去组合数得\(F(x) = \sum_{i=0}^{+\infty} \frac{1}{i+1} \dbinom{2i}{i} x^i\),即\(f_i = \frac{1}{i+1} \dbinom{2i}{i}\)

同理设节点数为i的所有二叉树的叶子种数为\(h_i\)(\(H(x)为序列的生成函数\)),\(H(x) = \frac{x}{\sqrt{1-4x}}\),同理得\(h_i = \dbinom{2i-2}{i-1}\),可得\(答案=\frac{h_i}{f_i}=\frac{n(n+1)}{2(2n-1)}\)

代码:

#include<cstdio>
#include<cstring>
#include<iostream>
using namespace std ;
int n; double p ;
int main(){
scanf("%d",&n) ;
p = n/1.000000000 ;
printf("%.9lf",((p)*(p+1)) / (2 * (2*p - 1))) ;
}

[LuoguP3978](https://www.luogu.org/problem/P3978) BZOJ4001概率论的更多相关文章

  1. 个人洛谷账号地址——https://www.luogu.org/space/show?uid=181909 附上NOIP查分系统

    个人洛谷地址:       https://www.luogu.org/space/show?uid=181909 NOPI查分地址:      http://bytew.net/OIer/

  2. https://www.luogu.org/blog/An-Amazing-Blog/mu-bi-wu-si-fan-yan-ji-ge-ji-miao-di-dong-xi

    https://www.luogu.org/blog/An-Amazing-Blog/mu-bi-wu-si-fan-yan-ji-ge-ji-miao-di-dong-xi

  3. 解决PHP curl https时error 77(Problem with reading the SSL CA cert (path? access rights?))

    服务器环境为CentOS,php-fpm,使用curl一个https站时失败,打开curl_error,捕获错误:Problem with reading the SSL CA cert (path? ...

  4. luogu P3978 [TJOI2015]概率论

    看着就是要打表找规律 使用以下代码 for(int i=3;i<=20;i++) { int a1=0,a2=0; for(int j=1;j<i;j++) { for(int k=0;k ...

  5. 新手村,学会做人选数 https://www.luogu.org/problemnew/show/P1036

    #include<cstdio> #include<cmath> #include<string.h> using namespace std; int n,k,s ...

  6. 并不对劲的bzoj4001:loj2105:p3978:[TJOI2015]概率论

    题目大意 随机生成一棵\(n\)(n\leq10^9)个节点的有根二叉树,问叶子结点个数的期望. 题解 subtask 1:\(n\leq100\),70pts 结论:不同的\(n\)个节点的有根二叉 ...

  7. 转载https://www.luogu.org/problemnew/solution/P1665,http://bailian.openjudge.cn/practice/2002/的新解法

    不知道为什么O(n^4)O(n4)的玄学方法能过,正解显然是O(n^2)O(n2)的,枚举对角线,然后算出另外两点判断存不存在. 关键就在怎么通过对角线算出另外两点的坐标. 先贴公式. int mid ...

  8. [**P2766** 最长不下降子序列问题](https://www.luogu.org/problemnew/show/P2766)

    P2766 最长不下降子序列问题 考虑我们是如何\(dp\)这个\(LIS\)的. 我们是倒着推,设置\(dp(i)\)代表以\(i\)为起点的\(LIS\)是多少.转移太显然了 \[ dp(i)=m ...

  9. P3978 [TJOI2015]概率论

    \(\color{#0066ff}{ 题目描述 }\) 为了提高智商,ZJY开始学习概率论.有一天,她想到了这样一个问题:对于一棵随机生成的n个结点的有根二叉树(所有互相不同构的形态等概率出现),它的 ...

随机推荐

  1. Web基础之日志

    Web基础之日志   日志在企业开发中有着不可或缺的作用,它可以用以记录用户操作.系统运行状态和错误信息.日志记录的好坏直接关系到系统出现问题时定位的速度.   最开始的日志一般使用log4j,后来s ...

  2. Golang的运算符-比较运算符

    Golang的运算符-比较运算符 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.比较运算符概述 比较运算符也称为关系运算符,比较运算符返回的类型为bool类型,常见的比较运算符 ...

  3. linux下nginx的安装和配置

    准备目录 [root@sqh ~]# mkdir /usr/local/nginx [root@sqh ~]# cd /usr/local/nginx 添加一些支持和依赖 1.安装gcc 安装redi ...

  4. 【pwnable.kr】blackjack

    又一道pwnable nc pwnable.kr 9009 读题找到源代码在:http://cboard.cprogramming.com/c-programming/114023-simple-bl ...

  5. js排序专场

    1,冒泡排序 function bubble(arr) { var len = arr.length - 1; for (let i = 0 ; i < len; i++) { var bool ...

  6. redis : Can't save in background: fork: Cannot allocate memory

    redis : Can't save in background: fork: Cannot allocate memory JAVA程序报错信息: MISCONF Redis is configur ...

  7. Nachos-Lab3-同步与互斥机制模块实现

    源码获取 https://github.com/icoty/nachos-3.4-Lab 内容一:总体概述 本实习希望通过修改Nachos系统平台的底层源代码,达到"扩展同步机制,实现同步互 ...

  8. 106-PHP查看类成员属性

    <?php class mao{ //定义猫类 public $age; //定义多个成员属性 protected $weight; private $color; } $mao1=new ma ...

  9. 第二阶段scrum-10

    1.整个团队的任务量: 2.任务看板: 会议照片: 产品状态: 等待发布

  10. .net core项目iis10上出现 HTTP 错误 500.19,错误代码:0x8007000d

    文件权限更改,配置文件更改,IIS重装重启,各种办法都不管用,下面是解决办法: 看错误信息里:模块:IIS Web Core 打开IIS: 模块列表中是否缺少红框里的两个组件(我这是已经安装好的截图) ...