首页
社区
课程
招聘
[讨论]饭后茶余纠结时之一:车羊问题
发表于: 2012-12-10 12:17 2361

[讨论]饭后茶余纠结时之一:车羊问题

2012-12-10 12:17
2361
车羊问题也被称作蒙提霍尔问题(Monty Hall Problem)或三门问题,是一个源自博弈论的数学游戏问题,大致出自美国的电视游戏节目“Let's Make a Deal”。问题的名字来自该节目的主持人蒙提·霍尔(Monty Hall)。
  
  这个游戏的玩法是:参赛者会看见三扇关闭了的门,其中一扇的后面有一辆汽车,选中后面有车的那扇门就可以赢得该汽车,而另外两扇门后面则各藏有一只山羊。当参赛者选定了一扇门,但未去开启它的时候,节目主持人会开启剩下两扇门的其中一扇,露出其中一只山羊。主持人其后会问参赛者要不要换另一扇仍然关上的门。
  
  明确的限制条件如下:
  参赛者在三扇门中挑选一扇。他并不知道内里有什么。
  主持人知道每扇门后面有什么。
  主持人必须开启剩下的其中一扇门,并且必须提供换门的机会。
  主持人永远都会挑一扇有山羊的门。
     ~ 如果参赛者挑了一扇有山羊的门,主持人必须挑另一扇有山羊的门。
     ~ 如果参赛者挑了一扇有汽车的门,主持人随机在另外两扇门中挑一扇有山羊的门。
  参赛者会被问是否保持他的原来选择,还是转而选择剩下的那一道门。

  问题是:

     转换选择会增加参赛者的机会吗?

[课程]Android-CTF解题方法汇总!

收藏
免费 0
支持
分享
最新回复 (2)
雪    币: 62
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
写了个javascript代码  看看吧~~

<html>
<head>
<script type="text/javascript"><!--
//统计参数
s=0;
n=65535000;
for(var i=0;i<n;i++){
//有三扇门,其中有一扇门后面有一辆汽车
var doors = new Array(0,0,0);
var cardoor = Math.floor(Math.random()*3); //0,1,2
doors[cardoor] = 1;
//幸运观众随机选取一个门
var choose = Math.floor(Math.random()*3); //0,1,2
//主持人开启一扇后面有山羊的门,问幸运观众是否改变原来的选择
for(var j=0;j<3;j++){
if(j==choose) continue;
if((doors[choose]==1) || (doors[choose]==0 && doors[j]==1)){
selectable = j; //这是剩下的另一扇门
break;
}
}
//观众选择了更改原来的选择
choose = j; //如果这句被注释,则输出的结果将是一个接近于1/3的数字
if(doors[choose]){
//累计获得汽车的次数
s++;
}
}
//统计获得汽车的概率
p=s/n;
alert(p);
//结果是一个接近于2/3的数
// --></script>
</head>
</html>


这是个很有争议的问题,但是的确是要改变的
2012-12-10 12:26
0
雪    币: 69
活跃值: (25)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
3
這是個經典的機率問題

全部隨機:
1. 參賽者從三扇門中隨機選取,選中汽車的機率為1/3。
2. 不論參賽者選取了哪扇門,主持人都會打開一扇後面有羊的門。
3. 在剩下的兩扇門中隨機選取,選中汽車的機率為1/2。

一開始有三扇門可選擇,假如選中汽車(1/3機會),則主持人開啟有羊的門,此時轉換選擇會選中有羊的門。
假如在三扇門中選中了有羊的門(2/3機會),則主持人會開啟另一個有羊的門,此時轉換選擇會選中有汽車的門。

意思就是說,我們有2/3的機會選中有羊的門,然後換另外一個門,就可以選中汽車了。
2012-12-10 13:15
0
游客
登录 | 注册 方可回帖
返回
//