s2Eva_IIT2008_T1 Carrera de caracoles

Ejercicio: 2Eva_IIT2008_T1 Carrera de caracoles

Propuesta de solución en Python para dos caracoles A y B:

# 2Eva_IIT2008_T1 Carrera de caracoles
# solo dos caracoles

import random  as rnd
# INGRESO
meta = int(input('meta maxima: '))

# PROCEDIMIENTO
A = 0
B = 0
t = 0
while (A<meta and B<meta):
    mueveA = int(rnd.random()*5)-1
    A = A + mueveA
    mueveB = int(rnd.random()*5)-1
    B = B + mueveB
    t= t+1

gana = 0
if (A>B):
    gana =1
if (A>B):
    gana = 2
    
# SALIDA
print('ganó el caracol: ',gana)
print('tiempo transcurrido: ', t)

Carrera para n caracoles use un vector e indices entre 1 y n

# 2Eva_IIT2008_T1 Carrera de caracoles
import random  as rnd
import numpy as np

# INGRESO
meta = int(input('meta maxima: '))
n = int(input('cuantos jugadores: '))

# PROCEDIMIENTO
# no se usa la posicion 0, caracoles entre[1,n]
posicion = np.zeros(n+1, dtype = int)
t = 0
gana = 0
while not(gana>=0):
    jugador = 0
    while not(jugador>=n):
        mueve = int(rnd.random()*5)-1
        posicion[jugador] = posicion[jugador] + mueve
        if (posicion[jugador]>meta):
            gana=jugador
        jugador = jugador +1
    t = t+1

# SALIDA
print('posiciones finales:')
print(posicion)
print('ganó el caracol: ',gana)
print('tiempo transcurrido: ', t)