spoj Favorite Dice(概率dp+期望)
题意:
摇一个n面的骰子,问每一面都被摇到的次数期望是多少。
题解:
概率dp往往都是倒着推
我们设dp[x]表示已经摇到了x个面,还要摇的概率次数
那么dp[n] = 0(即一次还没摇)
dp[0]就是答案
对于dp[i],我们考虑当前已经摇到i个面,动态规划要考虑状态,上一个状态可能是也是摇到了i个面(即本次摇的面已出现过),也可能是摇到了i-1个面(即本次摇的面第一次出现)
(1)扔到已经扔过的面求出的期望就是i/n *dp[i]
(2)扔到没扔过的面的期望就是 (n-i)/n *dp[i+1]
所以递推式为:
dp[i] = i/n *dp[i]+(n-i)/n *dp[i+1] +1.
两边都是dp[i]化简一下:
dp[i]=dp[i+1]+n/(n-i)
代码:
#include<bits/stdc++.h>
using namespace std;
double dp[1010];
int n;
int main()
{int t;scanf("%d",&t);while(t--){scanf("%d",&n);met(dp,0.0);for(int i=n-1;i>=0;i--)dp[i]=dp[i+1]+n*1.0/(n-i);printf("%.2lf\n",dp[0]);}
}
spoj Favorite Dice(概率dp+期望)相关推荐
- 插头DP 概率DP / 期望DP
插头DP && 概率DP / 期望DP 写在前面: 插头DP P5056 [模板]插头dp 手写哈希表的方法: 拉链法的代码如下: 开放寻址法的代码如下: 接下来是这道题的代码实现: ...
- Collecting Bugs POJ - 2096(基础概率dp+期望模板)
题意: 有s个系统,n种bug,小明每天找出一个bug,可能是任意一个系统的,可能是任意一种bug,即是某一系统的bug概率是1/s,是某一种bug概率是1/n. 求他找到s个系统的bug,n种bug ...
- 借助树的概率dp(期望)+数学-好题-hdu-4035-Maze
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=4035 题目意思: 有n个房间,有n-1条通道连接这n个房间(每两个房间之间有且只有一条路,所以实际上 ...
- HDU 4336 Card Collector(状压 + 概率DP 期望)题解
题意:每包干脆面可能开出卡或者什么都没有,一共n种卡,每种卡每包爆率pi,问收齐n种卡的期望 思路:期望求解公式为:$E(x) = \sum_{i=1}^{k}pi * xi + (1 - \sum_ ...
- 概率dp 期望 逆推
题目大意: 从起点0点开始到达点n,通过每次掷色子前进,可扔出1,2,3,4,5,6这6种情况,扔到几前进几,当然对应飞行通道可以通过x直达一点y,x<y,计算到达n点或超过n 点要扔色子的次数 ...
- 【原创】概率DP总结 by kuangbin
概率DP主要用于求解期望.概率等题目. 转移方程有时候比较灵活. 一般求概率是正推,求期望是逆推.通过题目可以体会到这点. 首先先推荐几篇参考的论文: <信息学竞赛中概率问题求解初探> & ...
- 动态规划 —— 概率 DP 与期望 DP
[概述] 由于概率和期望具有线性性质,使得可以在概率和期望之间建立一定的递推关系,这样就可以通过动态规划来解决一些概率问题,例如概率和期望的最值问题就常常使用概率 DP.期望 DP 来解决. 与其他的 ...
- SGU495 Kids and Prizes 概率DP,期望公式
题目大意:有N个盒子,里面都放着礼物,M个人依次去选择盒子,每人仅能选一次,如果里面有礼物则将礼物取出来,把空盒子放回原位,若没有礼物,则把空盒子放回原位.求礼物被拿走的个数的数学期望. 一.期望dp ...
- 【CodeForces - 518D】Ilya and Escalator(概率dp,数学期望)
题干: Ilya got tired of sports programming, left university and got a job in the subway. He was given ...
最新文章
- AI 岗位年薪下降 8.9%,程序员越“老”越吃香,最新薪酬报告发布!
- 每日一皮:虽然我们交付了V2版本,但用户仍然使用V1版本...
- Activity到底是什么时候显示到屏幕上的呢
- 什么是云计算机服务器,云电脑服务器是什么
- java本地创建zk节点
- Spring依赖处理过程源码分析
- 统计正数和负数的个数然后计算这些数的平均值_计算机中的二进制原来是这样:原码、反码和补码
- MyBatis3简介
- htmlcleaner+xpath抓取网页数据
- Numpy 使用总结(三)
- (转载)七剑下天山,独领自动化测试技术
- 大巧不工 JGraph简介和使用技巧(转)
- 15种独一无二的创新数据可视化方式
- 用c语言手搓一个600行的类c语言解释器: 给编程初学者的解释器教程(1)- 目标和前言
- MTK方案上基于Android N拦截黑名单中的短/彩信的方法
- 创建fate账户密码
- API入门系列之五 -一个正儿八经的SDK程序
- win7计算机磁盘清理,win7电脑清理磁盘的操作过程
- Linux学习总结-Linux磁盘分区与挂载
- 深圳大数据培训技术分享:Hadoop集群同步
热门文章
- 【物理笑话】学过物理的人才能看懂的笑话,你能看明白几个?
- 预售┃连锁反应装置积木好玩到尖叫!
- 天赋差的程序员,难道就只能半途而废吗?
- 如何快速解剖数据背后隐藏的信息
- C语言计算一个数的平方根立方根,怎样快速计算出一个数的平方根立方根?
- linux 编写脚本示范,Linux-scripts-简单脚本和脚本的执行
- golang防止MySQL注入_mysql – 如何最大限度地降低golang服务中下游服务中SQL注入的风险?...
- java socket send_java socket编程
- git pull 覆盖本地_SVN与Git比较的优缺点差异
- java实用教程——组件及事件处理——ActionEvent事件