博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
(算法)跳格子
阅读量:6292 次
发布时间:2019-06-22

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

题目:

有1,2,3,......无穷个格子,你从1号格子出发,每次1/2概率向前跳一格,1/2概率向前跳两格,走到格子编号为4的倍数时结束,结束时期望走的步数为____。

思路:

1、MonteCarlo模拟实验

参考代码

2、有限状态机的概率转移思想

跳一格跳两格都算一步;
dp(i,j)表示从格子i到格子j的期望步数:
dp(1,4)=1+0.5*dp(2,4)+0.5*dp(3,4);
dp(2,4)=1+0.5*dp(3,4)+0.5*dp(4,4);
dp(3,4)=1+0.5*dp(4,4)+0.5*dp(1,4);
dp(4,4)=0;
求解上述方程得到dp(1,4)=18/5;

代码:

#include
#include
#include
#include
using namespace std;bool rndJump(double p){ double prob=rand()/(double)RAND_MAX; if(prob<=p) return true; else return false;}// MonteCarlo Simulationdouble ExpectedSteps(){ const int MAX_TRY=100000000; double expected=0; int total=0; int times=0; int steps=0; for(int i=0;i

  

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

你可能感兴趣的文章
《Data Warehouse in Action》
查看>>
String 源码浅析(一)
查看>>
Spring Boot 最佳实践(三)模板引擎FreeMarker集成
查看>>
Fescar 发布 0.2.3 版本,支持 Redis 和 Apollo
查看>>
Google MapReduce到底解决什么问题?
查看>>
CCNP-6 OSPF试验2(BSCI)
查看>>
Excel 2013 全新的图表体验
查看>>
openstack 制作大于2TB根分区自动扩容的CENTOS镜像
查看>>
Unbuntu安装遭遇 vmware上的Easy install模式
查看>>
几个常用的ASP木马
查看>>
python分析postfix邮件日志的状态
查看>>
Mysql-5.6.x多实例配置
查看>>
psutil
查看>>
在git@osc上托管自己的代码
查看>>
机器学习算法:朴素贝叶斯
查看>>
小五思科技术学习笔记之扩展访问列表
查看>>
使用Python脚本检验文件系统数据完整性
查看>>
使用MDT部署Windows Server 2003 R2
查看>>
Redhat as5安装Mysql5.0.28
查看>>
通过TMG发布ActiveSync
查看>>