三门问题的主要内容表述如下:
在这个电视节目中有三扇门,这三扇门的后面会被随机的放进去物品,物品分别是汽车和两只山羊,此时参赛者要随机选择一扇门,在参赛者选择了一扇门之后,主持人并不会立刻打开这扇门,为了制造节目紧张悬疑的气氛,支持人会从剩下的两扇门中打开一扇有山羊的那扇门,随后主持人会给竞猜者提供一次重新选择门的机会,此时竞猜者可以保持自己的第一选择不变,也可以更换自己的选择选择另外一扇门,那么参赛者到底是应该换门呢?还是不换门呢?怎么样做得到汽车大奖的概率大一些呢?
可以明确主持人知道那扇门背后有汽车,不妨就编号为1,2,3三个门,因为在知乎有了很多讨论了,还是有人坚持1/2的概率的想法,所以我直接使用模拟来求解近似解。
下面是抛开概率论的思路:直接讲述我代码的思路
随机整数choice_num =1~3表示我自己的选择,反正开始都是1/3的概率,再整一个随机整数men_num = 1~3表示有汽车的门;再随机一个change =0或1表示是否改变选择,0表示不改变,1表示改变。
1.当choice_num = men_num 且 change = 0时,不改变选择可以赢
2.当choice_num ~= men_num 且 change = 1时 ,改变选择获得胜利
其他情况都输了,
第一种情况很容易理解,第二种,因为支持人知道那扇门有车,要改变选择同时获得胜利,前提你第一次没选到车,然后支持人必然打开有羊的那个,剩下那个就必然中奖了。
上代码看结果: