Descarga la aplicación
Selecciona una carpeta y pide al asistente que lea los archivos relevantes antes de editarlos. Mantén el objetivo y los límites de la tarea en la conversación.
Elige una reducción ganadora de Nim normal con hasta 128 montones de cero a mil millones de objetos. Prueba posiciones vacías y perdedoras, devolviendo ninguna jugada si el xor es cero y rechazando tamaños negativos o booleanos.
Selecciona una carpeta y pide al asistente que lea los archivos relevantes antes de editarlos. Mantén el objetivo y los límites de la tarea en la conversación.
Elige un endpoint compatible. Las herramientas disponibles y la calidad de las respuestas dependen del modelo y del servidor configurados.
Revisa las modificaciones y la salida de los comandos. Ejecuta las comprobaciones de tu proyecto antes de aceptar el resultado; el código generado no está probado por defecto.
Compara el comportamiento real con el resultado esperado. Si una prueba falla, investiga la causa antes de hacer más cambios.
def nim_move(piles):
if type(piles) not in (list, tuple) or len(piles) > 128 or any(type(v) is not int or not 0 <= v <= 10**9 for v in piles):
raise ValueError("nim.piles")
balance = 0
for pile in piles:
balance ^= pile
if balance == 0:
return None
for index, pile in enumerate(piles):
reduced = pile ^ balance
if reduced < pile:
return index, reducedRevisa antes de aplicar. Revisa las modificaciones y la salida de los comandos. Ejecuta las comprobaciones de tu proyecto antes de aceptar el resultado; el código generado no está probado por defecto.