Sin dobles para 2 jugadores
Escenario
De 168 levantadas, ¿cuántas veces 2 jugadores no reciben ningún doble?
Resultados
Luego de correr el escenario planteado, de 168 simulaciones 5 veces dos jugadores no tuvieron ningún doble es decir, 2.98%
Python
def count_doubles_in_hand(hand):
doubles_count = 0
for domino in hand:
if domino[0] == domino[1]:
doubles_count += 1
return doubles_count
# Nueva simulación para contar escenarios donde dos jugadores no tienen dobles
NUM_SIMULATIONS_NO_DOUBLES = 168
scenario_two_players_no_doubles_count = 0
print(f"Iniciando {NUM_SIMULATIONS_NO_DOUBLES} simulaciones para el escenario de dos jugadores sin dobles...")
for i in range(NUM_SIMULATIONS_NO_DOUBLES):
hands = deal_dominoes(num_players=4, stones_per_player=7)
found_two_players_no_doubles = False
# Check all unique pairs of players
for p1_idx in range(4):
for p2_idx in range(p1_idx + 1, 4):
p1_hand = hands[p1_idx]
p2_hand = hands[p2_idx]
doubles_in_p1_hand = count_doubles_in_hand(p1_hand)
doubles_in_p2_hand = count_doubles_in_hand(p2_hand)
if doubles_in_p1_hand == 0 and doubles_in_p2_hand == 0:
found_two_players_no_doubles = True
break # Found a pair, no need to check other pairs for this simulation run
if found_two_players_no_doubles:
break
if found_two_players_no_doubles:
scenario_two_players_no_doubles_count += 1
Comments
Post a Comment