Luogu P3978 [TJOI2015]概率论

Link
设\(f_n\)表示\(n\)个点的不同构的二叉树个数,\(g_n\)表示\(n\)个点的不同构的二叉树的叶节点数之和。
可以得到\(g_n=nf_{n-1}\)。

证:每棵\(n-1\)个点的二叉树有\(n\)个位置可以挂上一个叶节点进而得到\(n\)个点的二叉树。

我们知道\(f_n=C_n=\frac{2n\choose n}{n+1}\),因此\(ans=\frac{g_n}{f_n}=\frac{nf_{n-1}}{n}=\frac{2(n+1)}{4n-2}\)。

#include <cstdio>
int main()
{
    double n;
    scanf("%lf",&n);
    printf("%.9f",n*(n+1)/(2*(2*n-1)));
    return 0;
}
上一篇:Django学习:博客页面的响应式布局(10)


下一篇:Linux学习98 Linux防火墙iptables扩展匹配进阶