from collections import Counter from random import random def sim(p, wins_needed): wins, losses = 0, 0 while True: if random()=wins_needed or losses>=wins_needed: return wins,losses print(Counter([sim(0.51,3) for _ in range(1000000)]))