zoukankan      html  css  js  c++  java
  • [TJOI2015]概率论

    description

    Luogu
    BZOJ
    (n)个节点二叉树的叶子节点个数期望。

    data range

    [nle 10^9 ]

    solution

    考虑(期望=frac{权值总和}{总方案数}=frac{f_n}{g_n})
    推导(f_i,g_i)可得

    [f_i=2sum_{j=0}^{i-1}f_jg_{i-j-1} ]

    [g_i=sum_{j=0}^{i-1}g_jg_{i-j-1} ]

    考虑其生成函数(F(x),G(x)),则

    [F(x)=2F(x)G(x)x+x ]

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

    于是有

    [G(x)=frac{1-sqrt{1-4x}}{2x} ]

    [F(x)=frac{x}{sqrt{1-4x}} ]

    可以知道(g_i)就是卡特兰数。

    ((1-4x)^{frac{1}{2}})((1-4x)^{-frac{1}{2}})暴力泰勒展开得

    [(1-4x)^{frac{1}{2}}=1-sum_{i=1}^{infty}frac{(2i-3)!!2^i}{i!}x^i=1-sum_{i=1}^{infty}frac{2}{i}inom{2i-2}{i-2}x^i ]

    [(1-4x)^{-frac{1}{2}}=1+sum_{i=1}^{infty}frac{(2i-1)!!2^i}{i!}x^i=1+sum_{i=1}^{infty}frac{2}{i}inom{2i}{i}x^i ]

    其中(n!!)表示(n(n-2)(n-4)(n-6)...(1+[n\%2=1])),即(n)的双阶乘。
    于是我们可以得到

    [G(x)=sum_{i=0}^{infty}frac{1}{i+1}inom{2i}{i}x^i ]

    [F(x)=sum_{i=0}^{infty}inom{2i-2}{i-1}x^i ]

    最后答案为

    [frac{f_n}{g_n}=frac{inom{2n-2}{n-1}}{frac{1}{n+1}inom{2n}{n}}=frac{n(n+1)}{2(2n-1)} ]

    Code

    #include<bits/stdc++.h>
    using namespace std;
    int main()
    {
      int n;scanf("%d",&n);
      printf("%.9lf
    ",1.0*(n+1)*n/2/(2*n-1));
      return 0;
    }
    
  • 相关阅读:
    计算机网络——简单的端口扫描器
    Java课程设计——模拟行星运动
    H5 自定义数据属性
    实时获取网络状态
    Web 存储
    关于节流阀的理解
    DOM元素尺寸和位置
    H5选择符api
    HTML和XHTML的区别
    HTML的发展史
  • 原文地址:https://www.cnblogs.com/cjfdf/p/10148138.html
Copyright © 2011-2022 走看看