首页 > 代码库 > 羊车门问题

羊车门问题

羊车门问题

有3扇关闭的门,一扇门后停着汽车,另外两扇门后是山羊,主持人知道每扇门后是什么。参赛者首先选择一扇门。在开启它之前,主持人会从另外两扇门中打开一扇门,露出门后的山羊。此时,允许参赛者更换自己的选择。请问,参赛者更换选择后,能否增加猜中汽车的机会?

1.我认为会增加猜中汽车的机会。

原因如下: 参赛者在不知情的情况下第一次选中汽车,山羊甲,山羊乙的概率都是1/3。在更换选择的前提下,如果参赛者第一次选中山羊,则参赛者一定会选中汽车,因为选中山羊的概率是2/3,所以更换选择选中汽车的概率是2/3。如果参赛者不改变选择,则第一次选中汽车的概率是1/3,所以不更换选择选中汽车的概率是1/3。综上得出更换选择会增加猜中汽车的机会。下面用代码来证明。

2.程序源代码如下:

import random
count1 = 0 ##第一次选中山羊的概率
count2 = 0 ##第一次选中汽车的概率
time = eval(input("请输入要测试的次数:"))
for i in range(time) :
    People1 = random.randint(0,2) ## 如果等于2 则说明第一次选中汽车
    if People1 == 0 or People1 == 1 :##如果第一次选了羊,参赛者更换选择后就一定能选中汽车
        count1 += 1
    else:               ##第一次选了车并不更换的次数
        count2 += 1
rate2 = count2 / time  ##不更换选择选中汽车的概率
rate1 = count1 / time  ##更换选择选中汽车的概率
print("不更换选择选中汽车的概率={}%\n更换选择后选中汽车的概率={}%".format(rate2* 100,rate1* 100))

3.运行的验证结果如下:
技术分享技术分享

 

 

羊车门问题