Saya sedang mengerjakan metode untuk menemukan kata di kotak teka-teki kata.
Huruf-huruf tersebut dimasukkan ke dalam matriks. Metode ini harus mencetak baris dan kolom tempat huruf pertama dari kata tersebut ditemukan dan arah (n, s, e, w, ne, nw, se, sw) di mana pola tersebut masuk.
Metode yang saya miliki saat ini adalah:
public static String wordSearch(int r, int c, String letters, String search){
int x[] = { -1, -1, -1, 0, 0, 1, 1, 1 };
int y[] = { -1, 0, 1, -1, 1, -1, 0, 1 };
char [][] puzzle = new char [r][c];
int count = 0;
for (int i = 0; i < r; i++){
for (int j = 0; j < c; j++){
puzzle[i][j] = letters.charAt(count);
count++;
}
}
int length = search.length();
for (int dir = 0; dir < 8; dir++)
{
int k;
int rd = r + x[dir];
int cd = c + y[dir];
for (k = 1; k < length; k++)
{
rd += x[dir];
cd += y[dir];
}
if (k == length)
return rd+ ", "+cd;
}
return "Not found";}
Masalahnya adalah mencari tahu bagaimana mengembalikan arah pola tersebut bersama dengan huruf pertama dari kata tersebut (Hanya lulus satu kasus uji). Namun, saya yakin metode ini dapat mengetahui apakah kata tersebut ada di dalam grid atau tidak.