题目
甲乙二人玩掷硬币的游戏。两人连续抛掷硬币,如果最近三次硬币抛掷结果是“正反反”,则甲胜;如果是“反反正”,则乙胜。问:谁胜的概率更高?
理解
在甲和乙其中一方获胜前,双方一直扔硬币。当一方获胜,这一轮结束。循环多轮并记录各自获胜数。
代码
def p_coins(n):
# n - 试验次数
# p_a:假胜的概率,对应(1,0,0) ; p_b:乙胜的概率,对应(0,0,1) 需要设计滑动窗口。
n_a,n_b = 0,0
for i in range(0,n):
window = []
while len(window) < 3:
coin = random.randint(0,1)
window.append(coin)
if len(window) == 3 and window == [1,0