Salir al pelo y compañero sin ninguna piedra de ese palo

Escenario

Esta simulación se describe así:

Jugador uno sale al pelo con un doble (X:X), J1 no tiene otro doble y su compañero no tiene ninguna piedra con el palo X. 


Resultados

Luego de correr lo anterior 168 veces en el simulador, no hubo ni una courrencia (0%)

Luego de correr lo anterior 1680 veces en el simulador, no hubo ni una courrencia (0%)

Luego de correr lo anterior 16800 veces en el simulador, no hubo ni una courrencia (0%)


Misc

¿Qué creen ustedes?. En lo personal creo que es más común de lo que parece.

Si removemos la condición que J1 tenga un solo doble el porcentaje de ocurrencia aumenta a 2.17%



Código python

for target_num in range(7):
count_current_scenario = 0

for simulation_hands in all_simulations_player_hands:
p1_hand = simulation_hands[0] # Player One's hand
p3_hand = simulation_hands[2] # Player Three's hand (partner)

# Condition 1: Player One has the double tile (X,X)
p1_has_double_X = has_double_in_hand(p1_hand, target_num)

# Find all doubles in P1's hand to check for 'no other doubles'
p1_doubles_in_hand = [piece for piece in p1_hand if piece[0] == piece[1]]

# Condition 2: Player One's double (X,X) is 'al pelo'
# This means the number X appears exactly twice in P1's hand (only from the double itself)
p1_double_X_is_al_pelo = (count_number_in_hand(p1_hand, target_num) == 2)

# Condition 3: Player One has no other doubles besides (X,X)
p1_has_only_one_double = len(p1_doubles_in_hand) == 1 and (target_num, target_num) in p1_doubles_in_hand

# Condition 4: Player Three has no tiles with number X
p3_has_no_X = (count_number_in_hand(p3_hand, target_num) == 0)

if p1_has_double_X and p1_double_X_is_al_pelo and p1_has_only_one_double and p3_has_no_X:
count_current_scenario += 1

scenario_counts_per_number[target_num] = count_current_scenario

print("Conteo de ocurrencias del escenario específico para cada número X:")
for num, count in scenario_counts_per_number.items():
print(f" Número {num}: {count} veces")

total_global_scenario_count = sum(scenario_counts_per_number.values())
print(f"\nConteo total global del escenario específico (sumando todos los números X): {total_global_scenario_scenario_count} veces")



Comments

Popular Posts