麦序捕鱼的中奖概率

2018-11-13  本文已影响0人  某某香肠

前一阵子看了Hello上有个麦序捕鱼的游戏,其规则大概是这样的:

  1. 两个人(相当于庄家)从0到8中各抽一个数字a和b(每种个数字出现的概率是等概的)
  2. 玩家在从0到8中抽1个数字c,若这个数字在以上两个数字之间(a<c<b或者b<c<a),则玩家获胜,否则玩家落败

现在来算一下玩家获胜的概率

基本思路

  1. |a-b|<=1时,这个时候无论c取值为多少,玩家都会输,因此没有获胜的可能
  2. 如果|a-b|=2(n>2,这个可能性总共有(n-2)*2种(如果a<b,则总共有(n-2)种可能,反之也有(n-2种可能)),在这个条件下,c只有1种可能才能满足获胜条件,因此总共有1*(n-2)*2种了能
  3. 如果|a-b|=i(n>i),不难得出这个可能性总共有(n-i)*i种,该条件下c满足条件的可能有i-1种
  4. 把这些获胜的可能求和,在除以n3便可得出获胜的概率

编程实现(swift)

func rate(number n:Int)->Double{
    if n<3{
        return 0.0
    }
    var totalCount = 0
    for i in 1..<n{
        //totalCount += i*(n-1-i)*2
        totalCount += (i-1)*(n-i)*2
    }
    return Double(totalCount)/pow(Double(n),3)
    
}

计算结果

当n为9时,获胜概率为0.2304

当n→∞时,获胜概率收敛于0.3333...

上一篇 下一篇

猜你喜欢

热点阅读