In Scacchi, è possibile che il gioco finisca dopo 4 mosse (2 ciascuna) con un Matto .
Il tuo obiettivo è trovare il Matto di Halma : il gioco a 2 giocatori di Halma che minimizza il numero di turni giocati.
Ci sono oltre 10 56 stati della scheda e ho visto che il fattore di ramificazione supera 1000, quindi è probabile che nessuno trovi la soluzione ottimale. Invece, stai cercando di trovare la soluzione migliore che puoi.
È necessario inviare un elenco di mosse e qualsiasi codice utilizzato per generare tali mosse.
Spiegazione del gioco
Halma è simile alle pedine cinesi, ma giocava su una tavola quadrata 16 * 16.
Inizialmente, la scheda appare così:
L'obiettivo del gioco è di spostare tutti i tuoi pezzi nelle posizioni iniziali dei pezzi del tuo avversario.
Nel turno di un giocatore, lui / lei può:
Passa il turno
Sposta uno dei suoi pezzi in uno spazio vuoto adiacente. Gli spazi adiacenti includono diagonali.
Prendi uno dei suoi pezzi ed esegui le seguenti operazioni un numero qualsiasi di volte: Salta il pezzo sopra un pezzo adiacente, facendolo atterrare nello spazio opposto al pezzo saltato.
Ecco un esempio per illustrare il 2 ° tipo di mossa.
Regole
Invia un elenco di mosse legali che comportano la fine del gioco.
Invia qualsiasi codice utilizzato per generare l'elenco.
Se ottieni un risultato migliore dal codice di qualcun altro, pubblica il risultato in un commento o modifica il suo post con i nuovi risultati.
Ogni mossa deve essere o None
per passare il turno o (x1,y1,x2,y2)
per spostare un pezzo, dove (x1,y1)
sono le coordinate del pezzo da spostare e (x2,y2)
sono la destinazione di quel pezzo (per le mosse di salto, ignora le coordinate intermedie). Le coordinate iniziano (0,0)
nell'angolo in alto a sinistra. le coordinate x aumentano verso destra, le coordinate y aumentano verso il basso. Le mosse dovrebbero essere separate da newline.
Puoi usare questo script Python per verificare le tue mosse. Utilizzare python halma_verify.py < file
per verificare le mosse file
.
Vince l'elenco più breve.