`

一个有趣的抛硬币问题

 
阅读更多

题目:一个有趣的抛硬币问题

假设有一个硬币,抛出字(背面)和花(正面)的概率都是0.5,而且每次抛硬币与前次结果无关。现在做一个游戏,连续地抛这个硬币,直到连续出现两次字为止,问平均要抛多少次才能结束游戏?注意,一旦连续抛出两个“字”向上游戏就结束了,不用继续抛。

 

解答:设平均要抛T次硬币才能结束游戏。

         首先简述一下抛硬币的过程。

         1. 抛出第一枚硬币,硬币的状态决定后续需要抛出得次数(重要);

         2. 如果硬币为花,重新开始,也就是需要再次抛出T次才能结束,注意这里运用递归的思想;

         3. 如果硬币为字,则需要在投一次硬币决定后续投出硬币的次数;如果为字,则不用在投了;如果为                 花,重复第2步。

       以上过程推出等式如下:

       T = 1  +  0.5*T + 0.5(1 + 0.5 * 0 + 0.5*T),解得 T = 6

       下面具体讲解:

       1 代表抛出的第一次,根据它的状态决定后续抛出的次数;

       0.5*T 代表第一次抛出的硬币为花,为花得概率为0.5,重新开始,那么后面还需要抛T次,期望次数就是0.5*T;

       0.5 *(1+0.5*0+0.5*T)代表第一次抛出的硬币为字,为字的概率也为0.5,此时需要在抛出一枚硬币,根据这枚硬币的状态决定后续操作的次数,于是就有了括号的部分(1+0.5*0+0.5*T),1 同样代表抛出一枚硬币,如果为字,游戏结束,不用在抛了,即为0次,概率为0.5,期望次数为0.5*0;如果为花,游戏重新开始,需要在抛T次,概率为0.5,期望次数为0.5*T。

 

所以最后的等式就为: T = 1  +  0.5*T + 0.5(1 + 0.5 * 0 + 0.5*T)

 

扩展参考:http://www.matrix67.com/blog/archives/3638

 

                  http://www.cnblogs.com/atyuwen/archive/2010/09/12/coin.html

 

 

 

分享到:
评论

相关推荐

    模拟抛硬币

    假设抛硬币时正面得10分,反面得5分。...例如第一次运行程序时模拟了100次硬币抛掷,第二次运行程序时模拟了300次硬币抛掷,则可以得到一个抛掷400次的结果 在图形界面下完成1),输出要求用柱状图显示

    EM抛硬币算法

    这是一个抛硬币的例子,H表示正面向上,T表示反面向上,参数θ表示正面朝上的概率。硬币有两个,A和B,硬币是有偏的。本次实验总共做了5组,每组随机选一个硬币,连续抛10次。如果知道每次抛的是哪个硬币,那么计算...

    抛硬币实验程序

    能模拟抛硬币实验并输出报告,实验次数越大越接近50%概率

    抛硬币测率(简单的c语言随机数应用)

    用c语言随机数简单模拟概率论中的抛硬币判断正面的概率

    抛硬币流量主小程序源码

    抛硬币,并不是因为硬币能帮你决定什么,而是因为在硬币抛出的那一刻,答案便会出现在你心里。

    虚拟抛硬币程序.rar

    非常简单的虚拟抛硬币程序,可统计出次数和百分率。 用vb编的~ 不仅没事可以拿来抛一抛,还可以研究并修改。

    抛硬币涨跌稳赢EA_抛硬币涨跌稳赢EA_ea_震荡ea_

    该EA为概率性突破型EA策略,需判定大致行情后,进行入场,但人工判定出错后,EA会反向开单,并加入马丁系数,在下一波的行情中寻求获利出场的可能性。故而该EA不惧怕单边/重大新闻/非农等超级逆势行情,但需要规避...

    抛硬币程序

    直接双击打开就可模拟抛硬币,非常方便!教概率的时候一定用的着!

    动态图表-抛硬币掷骰子频率趋势试验3

    抛硬币掷骰子频率趋势试验3

    c++源代码,模拟抛硬币所得正面的频率图

    c++源代码,实现模拟抛硬币所得正面的频率图。代码精简,适合学习算法的朋友参考使用。

    抛硬币小游戏微信小程序源码.zip

    抛硬币小游戏微信小程序源码 日常生活中遇到选择?...这个小程序也就是一个简单的抛硬币 没有什么其它额外的功能 大家需要的话就自行下载吧,安装挺简单的一个微信开发者工具就可以了也无需设置任何的合法域名!

    Python源码-抛硬币连续正面问题.py

    Python源码-抛硬币连续正面问题

    抛硬币小游戏微信小程序源码

    简介: 抛硬币小游戏微信小程序源码 ...这个小程序也就是一个简单的抛硬币 没有什么其它额外的功能 大家需要的话就自行下载吧,安装挺简单的一个微信开发者工具就可以了也无需设置任何的合法域名!

    python+玩抛硬币游戏+easygui交互界面+结果可视化

    代码包括抛硬币随机游戏、有easygui交互界面,并且能够输出结果并进行可视化。 代码有详细注释,可以自行修改重新利用。

    抛硬币小游戏微信小程序源码.rar

    抛硬币小游戏微信小程序源码 日常生活中遇到选择?...这个小程序也就是一个简单的抛硬币 没有什么其它额外的功能 大家需要的话就自行下载吧,安装挺简单的一个微信开发者工具就可以了也无需设置任何的合法域名!

    matlab抛硬币仿真

    通过matlab编写程序,对经典的抛硬币实验进行仿真

    算法分析实验 找零钱问题 伪造硬币问题

    1. 【伪造硬币问题】给你一个装有n个硬币的袋子。n个硬币中有一个是伪造的。你的任务是找出这个伪造的硬币。为了帮助你完成这一任务,将提供一台可用来比较两组硬币重量的仪器,利用这台仪器,可以知道两组硬币的...

    简单的抛硬币小游戏微信小程序源码

    日常生活中遇到选择?抛个硬币看看天意吧!...这个小程序也就是一个简单的抛硬币 没有什么其它额外的功能 大家需要的话就自行下载吧,安装挺简单的一个微信开发者工具就可以了也无需设置任何的合法域名!

    抛硬币 - MetaTrader 4EA.zip

    使用马丁格尔策略开单, 并带有虚拟尾随停止。

Global site tag (gtag.js) - Google Analytics