神奇的三门问题,到底换不换门

这篇具有很好参考价值的文章主要介绍了神奇的三门问题,到底换不换门。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

熬夜无聊刷b站的时候刷到了一个有趣的视频,讲的是一个概率论问题【三门问题】,感觉很有意思,就记了下来。
这是原视频链接:神奇的三门问题

简单介绍下三门问题:现在有三扇门,两扇门后是山羊,一扇门后是跑车,随机选择一道门,如果门后是跑车,就中奖,否则就是没中奖。首先随机选择一道门,则此时中奖的概率是三分之一即33.33%;然后从剩下的两扇门中打开一道后面是山羊的门,此时就只剩下最后一扇既没有打开也没有被选择的门。这时你有一次换门的机会,可以重新选择最后一道门,也可以选择不换。

那么应该是选择换门呢,还是仍然选择之前选中的那扇门?在一般人的思维,换或不换中奖的概率都是一样的,都是二分之一50%,换门其实上没有多大的意义;然而正确的选择却超乎常人的想象,此时应该换门,换门中奖的概率高达66.6%,不换门中奖的概率只有33.3%,换门赢的概率几乎是不换门赢的概率的两倍。

首先是不换门赢的概率,很简单就是最开始的三选一33.3%,后面的打开一扇是山羊的门的操作对赢的概率没有任何影响,并不是打开之后的二选一,因为之后排除掉一个错误选项并不会影响之前的选择的概率。

然后是换门赢的概率,这个的逻辑有点绕,理解起来要从反面来思考。首先什么时候是必赢的呢?当然就是第三扇门就是正确的选择的时候,此时换门就赢;这也就意味着第一次选择的门必定是错误的时候换门必赢,因为第二扇错误的门已经被打开了,也就是说换门赢的概率取决于第一次选择时选错的概率,而第一次选择时选错的概率是多少呢?66.6%。

总结来说,换门不换门赢的概率取决于第一次选择选对或者选错的概率,不换门 -> 第一次选对 -> 33.3%,换门 -> 第一次选错 -> 66.6%。

口说无凭,代码来证,换门赢的概率确实大约是66.6%。

object ThreeDoor {
    private val doors: List<Int> = listOf(0, 1, 2)

    private var winAfterNoExchange: Int = 0

    private var winAfterExchange: Int = 0

    private const val gameTimes: Int = 100000

    fun run() {
        for (i in 0 until gameTimes) {
            runOnce()
        }
        println("total times: $gameTimes, win no exchange times: $winAfterNoExchange, winning probability: ${ (winAfterNoExchange.toFloat() / gameTimes) * 100}")
        println("total times: $gameTimes, win exchange times: $winAfterExchange, winning probability: ${ (winAfterExchange.toFloat() / gameTimes) * 100}")

    }

    private fun runOnce() {
        val correct = doors.random()
        val select = doors.random()
        val openSheep = doors.getSheep(correct, select)
        if (isWinNoExchange(correct, select, openSheep)) {
            winAfterNoExchange += 1
        }
        if (isWinExchange(correct, select, openSheep)) {
            winAfterExchange += 1
        }
    }

    private fun isWinNoExchange(correct: Int, select: Int, openSheep: Int): Boolean {
        return select == correct
    }

    private fun isWinExchange(correct: Int, select: Int, openSheep: Int): Boolean {
        val selectAfterExchange = doors.first {
            (it != select) && (it != openSheep)
        }
        return selectAfterExchange == correct
    }

    private fun List<Int>.getSheep(correct: Int, select: Int): Int {
        return this.filter {  (it != correct) && (it != select) }.random()
    }
}

三选一后换不换的原理,杂记,概率论,kotlin,算法文章来源地址https://www.toymoban.com/news/detail-603247.html

到了这里,关于神奇的三门问题,到底换不换门的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • “三门问题”背后的概率论原理解析

            前段时间我在知乎上看到这么一个问题:假设你在参加一个抽奖游戏,主持人在三个小碗分下面放了 1 块钱、1 块钱和 10000 块钱的筹码。你选中哪一个,你就可以领到对应的钱。当你选定一个碗之后,主持人翻开剩下两个碗里,下面有一块钱筹码的碗给你看。并且

    2024年02月10日
    浏览(31)
  • 对三门问题的思考,应该细分两种情况

    三门问题来源于一个娱乐节目。节目中有一位参与者和一位主持人,在参与者的面前有三扇关闭的门,其中两扇门的后面是空的,剩下一扇门后是一辆法拉利跑车。当参赛者选定了一扇门,但未去开启它的时候,节目主持人开启剩下两扇门的其中一扇,是空门。主持人其后会

    2023年04月25日
    浏览(26)
  • 五分钟了解三门问题是什么?贝叶斯公式和蒙提霍尔问题有什么关联?

    经典三门问题相信大家都了解过,如果没了解过,那刚好,本文带大家5分钟了解三门问题是什么。 热心市民小明被选中参加一个抽奖游戏, 游戏规则是这样的 : 小明面前有ABC三扇相同的门,小明和观众无法知道ABC三扇门背后有什么。 ABC三扇门中只有一扇门背后有一辆汽车

    2023年04月08日
    浏览(29)
  • 解决前端“\n”不换行问题

    在日常开发过程中,换行显示是一种很常见的应用需求,但是偶然发现,有时候使用 \\\"n\\\"并不会换行显示,只会被识别为空格,如下图。 通过上图可以看出,\\\"n\\\"它被识别成了一个空格显示,并没有达到换行的效果,那我们应该如何实现换行呢? 其实很简单,我们只需要对文

    2024年02月07日
    浏览(29)
  • 无需去营业厅,8元不换号不换卡修改手机套餐

    (营业厅怎么都改不了的套餐,在手机上就可以修改了) 很多人的手机都是两张卡,本来话费就用不了多少,但是各种套路下套餐都是越来越高,而且营业厅的人都会说在合约期内无法办理, 一个月几十元甚至于一百多元吧,今天在这里特地的给禅友们奉献上一期如何给自

    2024年02月09日
    浏览(30)
  • 一文揭秘DDD到底解决了什么问题

      一、架构设计是为了解决系统复杂度 谈到架构,相信每个技术人员都是耳熟能详,但如果深入探讨一下,“为何要做架构设计?”或者“架构设计目的是什么?”类似的问题,大部分人可能从来没有思考过,或者即使有思考,也没有太明确可信的答案。   1.1 架构设计的误

    2024年02月08日
    浏览(42)
  • 01背包(换汤不换药)

    链接:登录—专业IT笔试面试备考平台_牛客网 来源:牛客网 有一个箱子容量为V(正整数,0 ≤ V ≤ 20000),同时有n个物品(0<n ≤ 30),每个物品有一个体积(正整数)。 要求n个物品中,任取若干个装入箱内,使箱子的剩余空间为最小。 分析: 不还是01背包求最大价值嘛

    2024年02月09日
    浏览(29)
  • ai写作在线平台到底如何?不再担心写作效率问题

    看了各种“打工人现状”的视频后,各位打工人在收获乐趣的同时,想必也是感同身受。 每天的工作量在不断增加,而薪酬却停滞不前。这种加量不加价的“好事”经常会发生在职场里,却不会出现在中午的外卖里。 好在ai写作功能的兴起为劳累的打工人们带来了一丝解脱,

    2024年04月22日
    浏览(22)
  • 不知道该学那一个语言?一文带你了解三门语言

    名字:阿玥的小东东 学习:Python。正在学习c++ 主页:阿玥的小东东 目录 粉丝留言,回答问题 1.首先,初步了解 

    2024年02月21日
    浏览(36)
  • 逻辑(css3)_强制不换行

    需求 如上图做一个跑马灯数据,时间、地点、姓名、提示文本字数都不是固定的。 逻辑思想 个人想法是给四个文本均设置宽度,不然会出现 不能左对齐 的现象。 此时四个文本均左对齐, 垂直排列样式也比较好看,但是出现一个缺点: 某些手机屏幕上会 折行 。 此时可以

    2024年02月06日
    浏览(29)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包