Conditional Probability · Strange Coin Game
Lesson 7
Let's confirm this with an experiment.
from random import randint, seed
def appears_before(first_pattern, second_pattern):
good, num_experiments = 0, 1000000
for _ in range(num_experiments):
last_three_tosses = [randint(0, 1) for _ in range(3)]
while True:
if last_three_tosses == first_pattern:
good += 1
break
elif last_three_tosses == second_pattern:
break
else:
last_three_tosses = last_three_tosses[1:] + [randint(0, 1), ]
return good / num_experiments
seed(19)
print(appears_before([0, 0, 1], [0, 1, 1]))0.666727