文字列として 2D 配列が与えられ、キーボードから単語が与えられます。単語はどのようなものでもかまいません (8 つの隣接語すべてが考慮されます) が、一致中に同じ文字を 2 回使用することはできません。単語の最初と最後の文字のインデックスを (x,y) として返します。一致が見つからない場合は -1 を返します。
それが問題です。検索に困っています。私はそれを試しました:
int x=0,y=0;
for(int f=0; f<WordinArray.length; f++){
for(int i=0; i<matrix.length; i++){
for(int j=0; j<matrix[0].length; j++){
if(matrix[i][j].equals(WordinArray[f])){
x=i; y=j;
System.out.print("("+x+","+y+")");
}
}
}
}
しかし、そのコードは想定どおりに機能していません。この検索コードを他にどのように書くことができますか?