Sto progettando un motore per un gioco che ha una matrice 2D come questo:vicini collegati in un array di Java 2D
0,1,1,2,0
0,1,2,1,1
1,0,1,0,2
2,1,2,0,0
2,0,1,0,0
Sono bloccato al "game over" condizione in quanto deve controllare se 1 o 2 sono collegati. Dovrebbe dichiarare il giocatore con 1 del vincitore e restituire questo:
1 1
1 1 1
1 1
1
1
1
Ho provato con la ricorsione controllando ogni posizione nella matrice e controllando i suoi vicini in tutte le 8 direzioni, ma il metodo sono voluti 45 secondi per l'esecuzione che è inefficiente.
Qualcuno ha qualche idea? Un esempio di pseudo-codice sarebbe apprezzato (io sono uno studente lento).
si può approfondire la condizione? perché p1 è il vincitore? –
Vuoi verificare se tutti gli 1 sono collegati a 8? (O tutti i 2, nel caso del lettore 2?) –
puoi pubblicare ciò che hai provato? –