título Descripción
día de los niños cada año, vaca-off prepararán algunos pequeños regalos para visitar a los niños del orfanato, este año también es cierto. Como un veterano de HF ganado, naturalmente, hemos preparado algunos juegos. Entre ellos, hay un juego de la siguiente manera: En primer lugar, que los niños rodeadas por un círculo grande. A continuación, asigna aleatoriamente un número m, de manera que el número de niños 0 Número poniendo. Llorado cada vez m-1 los niños cantan una canción a estar fuera de la línea, entonces cualquiera de las cajas de regalo en la elección de un regalo, y no regresar al círculo, empezando por su próximo hijo, continúe 0 m ... -1 número de paquetes .... .... seguir hasta que el último hijo restante, no se puede realizar, y obtener el ganado fuera de los raros "Detective Conan" Edición coleccionista (plazas limitadas oh !! ^ _ ^). ¿Quieres probar siguiente, que los hijos recibirán los regalos que? (NOTA: El número de niños es de 0 a n-1)
Si no hay niños, por favor devuelva -1
pensamiento
Originalmente todavía enredado que no hay manera de calcular directamente, no más tarde descubierto. Cada elemento sólo puede eliminar la especificada
class Solution:
def LastRemaining_Solution(self, n, m):
if n == 0:
return -1
nums = [i for i in range(n)]
delIndex = 0
while len(nums)>1:
delIndex = (delIndex+(m-1))%len(nums)
del nums[delIndex]
return nums[0]