NO.1羊车门问题

羊车门问题

有3扇关闭的门,一扇门后停着汽车,另外两扇门后是山羊,主持人知道每扇门后是什么。参赛者首先选择一扇门。在开启它之前,主持人会从另外两扇门中打开一扇门,露出门后的山羊。此时,允许参赛者更换自己的选择。请问,参赛者更换选择后,能否增加猜中汽车的机会?请通过设计并编写程序验证,并给出自己的解释。答案要求以如下方式给出。

1、我认为会增加选中汽车的机会。

原因如下:假设不更改那么选中概率为1/3假设更改:并假设一号门后面有车如果选择一号门那么更改后得奖几率为零,如果选择二号门那么能获奖,如果选择三号门那么能获奖,综上所述变更后获奖概率为2/3

2、程序源代码如下:

 

3、运行的验证结果如下:

转载于:https://www.cnblogs.com/ren812209/p/6670565.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
羊车门问题是一个经典的概率问题,假设有三个门,其中一个门后面有一辆汽车,另外两个门后面是羊。现在你可以选择其中一个门,并得到你所选的门后面的奖品。在你做出选择之后,主持人会打开你没有选择的其中一个羊门,并告诉你这扇门后面是一只羊。这时候,你有两个选择:要么坚持最初的选择,要么选另一个未开的门。问题是:换门后中奖的概率是否会变大? 针对这个问题,总体来说,换门后中奖的概率更大。具体解释可参考下面这篇博客:https://blog.csdn.net/qq_38906523/article/details/100533202 下面是 Python 代码实现: ```python import random # 选手不换门 def no_change(): doors = [0, 0, 1] # 三个门,0表示羊,1表示汽车 random.shuffle(doors) # 汽车随机放在某个门后面 player_choice = random.choice([0, 1, 2]) # 选手随机选一个门 return doors[player_choice] # 选手换门 def change(): doors = [0, 0, 1] random.shuffle(doors) player_choice = random.choice([0, 1, 2]) exclude = [player_choice] # 排除选手选择的门 goat_doors = [i for i in range(3) if i not in exclude and doors[i] == 0] # 选出羊门 open_goat_door = random.choice(goat_doors) # 主持人打开一个羊门 exclude.append(open_goat_door) # 排除主持人打开的门 remaining_door = [i for i in range(3) if i not in exclude][0] # 剩下的未选门 return doors[remaining_door] # 多次模拟实验,并计算换门和不换门的中奖概率 n = 10000 # 实验次数 win_no_change = sum([no_change() for _ in range(n)]) / n win_change = sum([change() for _ in range(n)]) / n print("不换门中奖概率:", win_no_change) print("换门中奖概率:", win_change) ``` 结果如下: ``` 不换门中奖概率: 0.3302 换门中奖概率: 0.6676 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值