Python Juego de vivos y muertos de Josephus
30 personas están en un barco, está sobrecargado, necesitan bajar 15 personas.
Entonces la gente se forma en una fila, y la posición en la fila es su número.
Cuentan, comenzando desde 1, la persona que cuenta hasta 9 baja del barco.
Así sucesivamente hasta que queden solo 15 personas en el barco. ¿Qué números de personas bajaron del barco?
Ejemplo
people={}
for x in range(1,31):
people[x]=1
# print(people)
check=0
i=1
j=0
while i<=31:
if i == 31:
i=1
elif j == 15:
break
else:
if people[i] == 0:
i+=1
continue
else:
check+=1
if check == 9:
people[i]=0
check = 0
print("La persona número {} bajó del barco".format(i))
j+=1
else:
i+=1
continue
Al ejecutar el ejemplo anterior, el resultado es:
9号下船了 18号下船了 27号下船了 6号下船了 16号下船了 26号下船了 7号下船了 19号下船了 30号下船了 12号下船了 24号下船了 8号下船了 22号下船了 5号下船了 23号下船了Otras extensiones
Ejemplos de Python3