正题


题目大意

开始的时候一个点,然后等概率随机选一个叶子节点展开成两个,求nnn个叶子节点的树的叶子节点平均深度和最大深度期望。


解题思路

平均深度很好求,因为每展开一个,叶子节点总深度就加上个2。

所以gi=gi−1+2ig_{i}=g_{i-1}+\frac{2}{i}gi​=gi−1​+i2​

然后考虑如何求最大深度。

设fi,jf_{i,j}fi,j​为iii个节点深度≥j\geq j≥j,然后考虑一棵树,我们枚举一个子树的大小kkk,那么另一个就是i−ki-ki−k,然后展开一个的话fk,j−1f_{k,j-1}fk,j−1​或fi−k,j−1f_{i-k,j-1}fi−k,j−1​。但是因为都大于jjj的情况重复了,所以要加上一个fk,j−1∗fi−k,j−1f_{k,j-1}*f_{i-k,j-1}fk,j−1​∗fi−k,j−1​
fi,j=fk,j−1+fi−k,j−1−fk,j−1∗fi−k,j−1f_{i,j}=f_{k,j-1}+f_{i-k,j-1}-f_{k,j-1}*f_{i-k,j-1}fi,j​=fk,j−1​+fi−k,j−1​−fk,j−1​∗fi−k,j−1​

之后答案就是∑i=1n−1fi\sum_{i=1}^{n-1}f_{i}i=1∑n−1​fi​


codecodecode

#include<cstdio>
using namespace std;
int q,n;
double g[110],f[110][110],ans;
int main()
{scanf("%d%d",&q,&n);if(q==1){g[1]=0;for(int i=2;i<=n;i++)g[i]=g[i-1]+(double)2/i;printf("%lf",g[n]);}else{for(int i=1;i<=n;i++)f[i][0]=1;for(int i=2;i<=n;i++)for(int j=1;j<i;j++){for(int k=1;k<i;k++)f[i][j]+=f[k][j-1]+f[i-k][j-1]-f[k][j-1]*f[i-k][j-1];f[i][j]/=(double)i-1;}for(int i=1;i<n;i++)ans+=f[n][i];printf("%lf",ans);}
}

P3830-[SHOI2012]随机树【数学期望,dp】相关推荐

  1. Luogu P3830 [SHOI2012]随机树 | 期望 DP

    题目链接 第$1$问 设$g(i)$为当有$i$个叶节点时,树的叶节点的平均深度的期望值. 假如现在有$(i-1)$个叶节点,现在要等概率地展开一个叶节点,那么展开的那个叶节点的期望深度为$g(i-1 ...

  2. luogu3830 [SHOI2012]随机树

    传送门:洛谷 题目大意:对于一个只有一个节点的二叉树,一次操作随机将这棵树的叶节点的下方增加两个节点.$n-1$次操作后变为$n$个叶节点的二叉树.求:(1)叶节点平均深度的期望值(2)树深度的数学期 ...

  3. CF1540B-Tree Array【数学期望,dp】

    正题 题目链接:https://www.luogu.com.cn/problem/CF1540B 题目大意 nnn个点的一棵树,开始随机选择一个点标记,然后每次随机选择一个与被标记点连边的点标记,按照 ...

  4. CF1267G-Game Relics【数学期望,dp】

    正题 题目链接:https://www.luogu.com.cn/problem/CF1267G 题目大意 给出nnn个物品,你可以进行如下操作 花费xxx获得随机一个物品. 花费cic_ici​获得 ...

  5. P1850-换教室【数学期望,dp,Floyd】

    正题 题目大意 一张图,nnn次,每次在cic_ici​上课,可以申请换课室到did_idi​,成功概率kik_iki​.求最短需要走的路径的期望长度 解题思路 先FlodyFlodyFlody预处理 ...

  6. CF708E-Student‘s Camp【数学期望,dp】

    正题 题目链接:https://www.luogu.com.cn/problem/CF708E 题目大意 有n∗mn*mn∗m的矩形网格,然后每次每行最左边和最右边的格子各有p=cdp=\frac{c ...

  7. 概率期望题(期望 DP)做题记录

    概率期望题(期望 DP)做题记录 P3830 [SHOI2012]随机树 难点在于第二问:生成树的期望深度. 不 wei zhuo 捏,设 \(dp_{i,j}\) 表示已经有了 \(i\) 个叶子结 ...

  8. 聪聪和可可(记忆化dp+数学期望)

    emmmm 输入格式 数据的第1行为两个整数N和E,以空格分隔,分别表示森林中的景点数和连接相邻景点的路的条数. 第2行包含两个整数C和M,以空格分隔,分别表示初始时聪聪和可可所在的景点的编号. 接下 ...

  9. CF1153F-Serval and Bonus Problem【dp,数学期望】

    正题 题目链接:https://www.luogu.com.cn/problem/CF1153F 题目大意 在有nnn个区间的左右端点在[0,l)[0,l)[0,l)范围内随机,求被至少kkk个区间覆 ...

最新文章

  1. 关于Python 3.9,那些你不知道的事
  2. 别拒绝生命中偶尔的初恋
  3. 修改android studio中的avd sdk路径、avd sdk找不到的解决方案
  4. linux 内核模块 编译错误 include/linux/mmzone.h:18:26: fatal error: linux/bounds.h: No such file or director
  5. Yahoo!团队实践分享:网站性能优化的34条黄金守则
  6. 了解Windows内核内存池
  7. 23种设计模式介绍(一)---- 创建型模式
  8. 计算机辅助语文识字教学的优势,小学语文计算机辅助教学研究
  9. 宝塔Linux控制面板专业版破解步骤【亲测可用】
  10. 7月30日PMP考试注意事项
  11. 强行进入加密QQ空间
  12. 新版Airplayer--新功能介绍
  13. python中减号怎么打_我的python将减号与破折号混淆
  14. 2022年诺贝尔物理学奖背后的故事——贝尔不等式诞生之后
  15. retrofit 响应时间_HTTP Retrofit 网络传输
  16. 小米组织架构调整:雷军兼任中国区总裁,王川组建大家电部发力白电市场
  17. 2021年保育员(中级)考试及保育员(中级)考试总结
  18. 私有部署、重构企业软件,第四范式发布大模型“式说”
  19. 嫌微信公众号排版太丑?这里让你一步到位
  20. 总结 and 读后感之自控力 By 凯利·麦格尼格尔

热门文章

  1. android菜单和对话栏,Android回顾--(十一) 菜单和对话框
  2. html5与课程思政,“课程思政”怎样做
  3. python判断字符串里的字符_python 判断检测字符串中是否包含指定字符或字符串(比如:?)...
  4. 「offer来了」从基础到进阶原理,从vue2到vue3,48个知识点保姆级带你巩固vuejs知识体系
  5. [C++STL]string容器用法介绍
  6. [蓝桥杯2015决赛]穿越雷区-bfs
  7. 数据结构与算法--贪婪算法2
  8. SpringCloud常见问题总结(二)
  9. B-树、B+树、B*树详解
  10. Newton Method in Maching Learning