博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hdu 4405 Aeroplane chess(很水的期望DP)
阅读量:4129 次
发布时间:2019-05-25

本文共 913 字,大约阅读时间需要 3 分钟。

题目大意:通过摇筛子,做0跳到n点,有些点可以直接过渡,问要到达n点,需要摇色子的次数的期望值?

状态转移方程:

首先dp【N】=0;

其次分两种情况:

(1)i点不可以过渡,dp【i】=sum((dp【i+j】+1)/6)

(2)i点可以过渡到j点,dp【i】=dp[j]

代码如下:

#include
#include
#define MAXN 100005int turn[MAXN];double dp[MAXN];int main(){ int N,M,x,y,i,j; double temp; while(scanf("%d%d",&N,&M)&&(N+M)) { memset(turn,0,sizeof(turn)); while(M--) { scanf("%d%d",&x,&y); turn[x]=y; } dp[N]=0; for(i=N-1;i>=0;i--) { if(turn[i]) dp[i]=dp[turn[i]]; else { dp[i]=0.0; for(j=1;j<7;j++) { if(j+i<=N) temp=(dp[j+i]+1)/6; else temp=1.0/6.0; dp[i]+=temp; } } } printf("%0.4lf\n",dp[0]); } return 0;}

转载地址:http://rhuvi.baihongyu.com/

你可能感兴趣的文章
element ui 弹窗在IE11中关闭时闪现问题修复
查看>>
vue 遍历对象并动态绑定在下拉列表中
查看>>
Vue动态生成el-checkbox点击无法选中的解决方法
查看>>
python __future__
查看>>
MySQL Tricks1
查看>>
python 变量作用域问题(经典坑)
查看>>
pytorch
查看>>
pytorch(三)
查看>>
ubuntu相关
查看>>
C++ 调用json
查看>>
nano中设置脚本开机自启动
查看>>
动态库调动态库
查看>>
Kubernetes集群搭建之CNI-Flanneld部署篇
查看>>
k8s web终端连接工具
查看>>
手绘VS码绘(一):静态图绘制(码绘使用P5.js)
查看>>
手绘VS码绘(二):动态图绘制(码绘使用Processing)
查看>>
基于P5.js的“绘画系统”
查看>>
《达芬奇的人生密码》观后感
查看>>
论文翻译:《一个包容性设计的具体例子:聋人导向可访问性》
查看>>
基于“分形”编写的交互应用
查看>>