换牌中奖概率
问题
有三张牌只有一张有奖,任选一张后主持人翻开剩余两张之中没奖的一张,此时有一次换牌机会,换还是不换呢
先来实验
function fn() {
// 模拟中奖卡牌
let arr = [0, 0, 0]
let index = ~~(Math.random() * 3)
arr[index] = 1
// 模拟抽奖
index = ~~(Math.random() * 3)
let check = arr.splice(index, 1)
// 模拟主持人选出一张未中奖的
index = arr.findIndex(v => !v)
arr.splice(index, 1)
return [].concat(check, arr)
}
let tNum = 0
let fNum = 0
for (let i = 0; i < 10000; i++) {
let [check, unCheck] = fn()
if (check) {
tNum++
} else {
fNum++
}
}
console.log(tNum, fNum)
结论
换牌中奖概率是2/3,不换中奖概率1/3
分析
换个角度看问题其实就不那么难理解了,现在有两个人选牌,A先选一张,B拿后面两张,主持人将B手中没中奖的一张拿走,请问A和B中奖概率是多少?是不是瞬间明白了
拓展
这种会随着发展排除选项的问题生活中也很常见,比如狼人杀游戏对于角色的判断,比如打麻将时候要胡的牌等等,看完之后是不是要换一换呢