Il rompicapo di Guarini
L’architetto, matematico e filosofo romagnolo del diciassettesimo secolo Guarino Guarini ideò il seguente rompicapo basato sul gioco degli scacchi. Data una scacchiera di dimensione 3×3 con quattro cavalli posizionati nel modo mostrato alla sinistra della seguente figura, qual è la sequenza di mosse più breve che consente ai cavalli di passare da tale configurazione a quella mostrata alla destra della figura, senza mai posizionare due cavalli sulla stessa casella?
Ricordiamo che negli scacchi il cavallo muove di due posizioni in orizzontale e una posizione in verticale o viceversa: per esempio, il cavallo nero in posizione a3 nella configurazione iniziale può spostarsi nella posizione c2 oppure nella posizione b1.
La soluzione di tale rompicapo è molto semplice se si sceglie il giusto modo di rappresentare il problema: in effetti, tale rompicapo è un ottimo esempio di come la scelta del giusto modello con cui rappresentare un problema possa rendere la soluzione algoritmica del problema stesso molto semplice. A tale scopo, vi invitiamo a consultare la soluzione descritta nel libro Gocce di Java, di Pierluigi Crescenzi. Se, tuttavia, prima di scoprire la soluzione, volete cimentarvi con il rompicapo di Guarini, vi invitiamo a giocare con la web app sviluppata da Luciano Lio, un ex-studente dell’Università degli Studi di Firenze, facendo uso dell’ambiente di sviluppo AppLab. In tale web app, una volta selezionato il cavallo da voler muovere (il quale diviene rosso), bisogna selezionare la casella in cui muoverlo (l’app impedisce di effettuare mosse non corrette). Cliccando nuovamente sul cavallo selezionato, si annulla la selezione. Buon divertimento!