Public feed
#378388
import java.util.ArrayList;
import java.util.List;
public class b0ggleLayout {
private String[][] Grid;
private String[] Board;
private boolean[] SelectedSquare;
List<Integer> boardIntLoc;
List<Integer> LocationsInOrder = new ArrayList<Integer>();
public String[][] AssignGrid(String[] letterArray){
Board = letterArray;
SelectedSquare = new boolean[Board.length];
double sideLengthdbl = Math.sqrt(letterArray.length);
int sideLengthint = (int)sideLengthdbl;
Grid = new String[sideLengthint][sideLengthint];
for (int x = 0; x < letterArray.length; x++){
int row=x/4;
int col=x%4;
Grid[row][col]=letterArray[x];
}
for (int x = 0; x < Board.length; x++){
System.out.println("grid @ pos " + x + " is: String: " + Grid[(x/4)][(x%4)] + " row: " + x/4 + " col: " + x%4);
}
return Grid;
}
public void showBoard(String[] letterArray){
System.out.println("The grid is" + Grid.length + " by " + Grid.length);
for (int x=0;x<letterArray.length;x++){
System.out.println(letterArray[x] + " = element at " + x);
}
}
public List FindWord(String wordToCheck, int StringPos){
System.out.println("Stringpos " + StringPos);
System.out.println("wordToCheck.length " + wordToCheck.length());
System.out.println(" ");
for (int x = 0; x < Board.length; x++){
int[] MultipleOccurances = new int[Board.length];
if(wordToCheck.length()<=StringPos){
return LocationsInOrder;
}
String LetterToCheck = wordToCheck.charAt(StringPos)+"";
if (LetterToCheck.equalsIgnoreCase(Grid[(x/4)][(x%4)]) == true){
System.out.println("Looking for Letter To Check " + LetterToCheck);
System.out.println("Found letter at " + x);
System.out.println(" ");
MultipleOccurances[StringPos]=x;
LocationsInOrder.add(x);
System.out.println("locatoins in order " + LocationsInOrder.get(StringPos));
SelectedSquare[x]=true;
System.out.println("WordToCheck " + wordToCheck);
System.out.println(" ");
FindWord(wordToCheck, StringPos+1);
}
}
return LocationsInOrder;
}
public int FindNext(String wordToCheck, int StringPos, int StartLoc, int row, int col){
String LetterToCheck = wordToCheck.charAt(StringPos)+"";
System.out.println("Selected squre should be true: " + SelectedSquare[StartLoc]);
System.out.println("Next Letter is: " + LetterToCheck);
//System.out.println("First letter at pos: " + StringPos + " row: " + row + " col : " + col);
/*positions to test
* 1 row,col-1 left
* 2 row-1,col-1 left & up
* 3 row-1,col up
* 4 row-1,col+1 up & right
*
* 5 row,col+1 right
*
*
* 7 row+1,col down
* 8 row+1,col-1 down & left
* 6 row+1,col+1 right & down
*/
System.out.println("Current Row and Column : " + row + " " + col);
if(row<0 || row > 4 || col <0 || col > 4 ){
System.out.println("not on board");
}
if(Grid[row][col-1]!=null && Grid[row][col-1]==LetterToCheck){
System.out.println("Found lettertocheck: " + LetterToCheck);
}
if(Grid[row-1][col-1]!=null && Grid[row-1][col-1]==LetterToCheck){
System.out.println("Found lettertocheck: " + LetterToCheck);
}
if(Grid[row-1][col]!=null && Grid[row-1][col]==LetterToCheck){
System.out.println("Found lettertocheck: " + LetterToCheck);
}
if(Grid[row-1][col+1]!=null && Grid[row-1][col+1]==LetterToCheck){
System.out.println("Found lettertocheck: " + LetterToCheck);
}
if(Grid[row][col+1]!=null && Grid[row][col+1]==LetterToCheck){
System.out.println("Found lettertocheck: " + LetterToCheck);
}
if(Grid[row+1][col]!=null && Grid[row+1][col]==LetterToCheck){
System.out.println("Found lettertocheck: " + LetterToCheck);
}
if(Grid[row+1][col-1]!=null && Grid[row+1][col-1]==LetterToCheck){
System.out.println("Found lettertocheck: " + LetterToCheck);
}
if(Grid[row+1][col+1]!=null && Grid[row+1][col+1]==LetterToCheck){
System.out.println("Found lettertocheck: " + LetterToCheck);
}
else
System.out.println("LetterToCheck is not found");
return 0;
}
}