• 【博弈论】关于蒙蒂霍尔问题(三门问题)的讨论


    洛谷期中考试的第三题,思维型非常强,其来源就是美国的三门问题,又称:蒙蒂霍尔问题或山车问题。

    三门问题的原型是这样的:

    「假设你正在参加一个游戏节目,你被要求在三扇门中选择一扇:
    其中一扇后面有一辆车;其余两扇后面则是山羊。
    你选择了一道门,假设是一号门,然后知道门后面有什么的主持人,
    开启了另一扇后面有山羊的门,假设是三号门。
    他然后问你:“你想选择二号门吗?”转换你的选择对你来说是一种优势吗?」

    如果是按照人的【直觉】的话,肯定是每个门有车的概率都是1/3啊,所以换不换都一样。

    没错,我一开始也是这么想的,但是如果是这样,那为什么还要把这种题放到NOIP的提高组里。实际上,上面的那种【直觉】是错误的,完全错误的!

    再推了一大张打草纸后,发现对于这个问题,每次当主持人告诉你其中的一个错误选项后,你做出的觉得必须要换,换对你来说是一种优势。

    我们可以这么开看待这个问题:

    1.当前选择的那个门,有汽车的概率是33%,另外两个门有汽车的概率是66%。 【到这里没问题吧,神奇的在下面】

    2.主持人告诉你另外两个门中有一个门没有汽车,那那个门就可以扔掉了,那剩下的那个门,拥有汽车的概率就66%。【是不是?是不是这样看,转换是有优势的!】


    接下来,对于该问题进行推广,推广到OI中:

    题目描述

    Bob 正在考试,他遇到了一个奇怪的选择题:这个选择题共有 n个选项,其中只有一个选项是正确的。他完全不会做这题,所以只能靠蒙。

    蒙这道题分为 n−2n轮,在第 1 轮开始之前,Bob 会在这 n 个选项中随机蒙一项,之后的每轮流程如下:首先,Alice 会过来帮他排除一个选项,由于 Alice 事先知道答案,所以她会在现有的除正确的那一项和 Bob 正在选的那一项外的选项里,随机删去一个。之后,Bob 可以选择是否更换自己蒙的选项,如果更换,则随机更换到除正在选的那一项之外的任意一项。

    Bob 在这 n−2n  轮中,由于和 Alice 达成的神秘协定,需要恰好更换 kkk 次选项。他想知道,如何更换,使得自己蒙对的概率最大,输出这个概率。为了方便,你需要输出这个概率的分数形式在模 109+710^9 + 7 意义下的结果。

    前k-1次更换选项,最后1次更换选项的机会要留到最后。可以推出递归式,然后解答即可。

    代码实现:

    #include <bits/stdc++.h>
    using namespace std;
    const int MAXN = 100005;
    const int MOD = (int)1e9 + 7;
    int fexp(int a, int b) {
      int res = 1;
      for(int i = 1; i <= b; i <<= 1) {
        if(i & b) res = 1LL * res * a % MOD;
        a = 1LL * a * a % MOD;
      }
      return res;
    }
    
    int inv(int x) {
      return fexp(x, MOD - 2);
    }
    
    int f[MAXN], g[MAXN];
    int main() {
      int n, k;
      scanf("%d %d", &n, &k);
      if(k == 0) {
        printf("%lld
    ", 1LL * inv(n) % MOD);
      } else if(k == 1) {
        printf("%lld
    ", 1LL * (n - 1) * inv(n) % MOD);
      } else {
        puts("GG");
      }
      return 0;
    }
  • 相关阅读:
    mysql 如何优化left join
    mysql按日期分组(group by)查询统计的时候,没有数据补0的解决办法。
    JVM中各种变量保存位置
    CDN原理
    为什么家里的宽带的IP显示的是外地?
    2017 年 PHP 程序员未来路在何方?
    Nginx开启Gzip压缩提高页面加载速度
    git如何强制用远程分支更新本地
    真正的S2b其实是S2b2c
    判断JS数据类型的几种方法
  • 原文地址:https://www.cnblogs.com/virtualman/p/9566955.html
Copyright © 2020-2023  润新知