Problem Statement
In this puzzle, he must put exactly eight rooks onto an 8x8 chessboard. No two rooks must be in the same row, and no two rooks must be in the same column.
You are given a
Determine whether Snuke solved the puzzle correctly. If he solved the puzzle correctly, return "Correct". Otherwise return "Incorrect".
Definition
- Class:
- EightRooks
- Method:
- isCorrect
- Parameters:
- String[]
- Returns:
- String
- Method signature:
- String isCorrect(String[] board)
- (be sure your method is public)
Constraints
- board will contain exactly 8 elements.
- Each element of board will contain exactly 8 characters.
- Each character in board will be either 'R' or '.'.
Examples
{"R.......", ".R......", "..R.....", "...R....", "....R...", ".....R..", "......R.", ".......R"}
Returns: "Correct"
{"........", "....R...", "........", ".R......", "........", "........", "..R.....", "........"}
Returns: "Incorrect"
The number of rooks is not eight.
{"......R.", "....R...", "...R....", ".R......", "R.......", ".....R..", "..R.....", ".......R"}
Returns: "Correct"
{"......R.", "....R...", "...R....", ".R......", "R.......", ".......R", "..R.....", ".......R"}
Returns: "Incorrect"
The rightmost column contains two rooks.
{"........", "........", "........", "........", "........", "........", "........", "........"}
Returns: "Incorrect"
{".....R..", ".R......", "..R.....", "R.......", "....R...", "......R.", ".......R", "...R...."}
Returns: "Correct"
{"..R.....", "....R...", ".....R..", ".R......", "R.......", "...R....", "......R.", ".......R"}
Returns: "Correct"
{"..R.....", "...R....", "......R.", "R.......", ".R......", ".....R..", ".......R", "....R..."}
Returns: "Correct"
{".R......", "......R.", ".......R", ".....R..", "R.......", "..R.....", "...R....", "....R..."}
Returns: "Correct"
{"....R...", "..R.....", ".R......", "...R....", "R.......", ".....R..", ".......R", "......R."}
Returns: "Correct"
{".R......", "......R.", "..R.....", ".....R..", "R.......", ".......R", "...R....", "....R..."}
Returns: "Correct"
{".....R..", "......R.", ".R......", "R.......", "..R.....", ".......R", "....R...", "...R...."}
Returns: "Correct"
{"...R....", "......R.", ".R......", ".....R..", "..R.....", "....R...", ".......R", "R......."}
Returns: "Correct"
{"......R.", ".......R", "...R....", "R.......", "....R...", "..R.....", ".R......", ".....R.."}
Returns: "Correct"
{"...R....", "R.......", ".......R", ".R......", ".....R..", "......R.", "..R.....", "....R..."}
Returns: "Correct"
{"..R.....", ".......R", "......R.", "....R...", "...R....", "R.......", ".....R..", ".R......"}
Returns: "Correct"
{".......R", "...R....", "R.......", ".R......", "....R...", "......R.", "..R.....", ".....R.."}
Returns: "Correct"
{"......R.", "...R....", "..R.....", ".....R..", ".......R", ".R......", "R.......", "....R..."}
Returns: "Correct"
{".....R..", "..R.....", ".......R", "....R...", "R.......", "...R....", "......R.", ".R......"}
Returns: "Correct"
{".......R", "...R....", ".R......", ".....R..", "....R...", "..R.....", "......R.", "R......."}
Returns: "Correct"
{"......R.", ".....R..", "....R...", "..R.....", ".......R", "R.......", "...R....", ".R......"}
Returns: "Correct"
{"R.......", "..R.....", "......R.", ".....R..", ".R......", ".......R", "...R....", "....R..."}
Returns: "Correct"
{"R.......", "...R....", "....R...", "..R.....", "......R.", ".....R..", ".R......", ".......R"}
Returns: "Correct"
{".......R", "......R.", "....R...", "R.......", "..R.....", ".....R..", ".R......", "...R...."}
Returns: "Correct"
{".R......", "....R...", ".......R", "..R.....", ".....R..", "R.......", "......R.", "...R...."}
Returns: "Correct"
{".R......", "........", "........", "........", "........", "........", "........", "........"}
Returns: "Incorrect"
{"........", "........", "........", "........", "R.......", "........", ".......R", "........"}
Returns: "Incorrect"
{"........", "........", "..R.....", "........", "........", "...R....", ".......R", "R......."}
Returns: "Incorrect"
{"...RR.R.", "........", "........", "........", "R.......", "..R.R...", "......R.", "....R..."}
Returns: "Incorrect"
{"........", ".....R.R", ".R...R..", "RRR.....", ".R.R....", "...R....", ".....R.R", "...RRRR."}
Returns: "Incorrect"
{".R.RRR.R", ".....R.R", "R.R..R.R", "...RRR.R", "R..R.RR.", "R.R...R.", ".R..RR.R", "RRRR.R.R"}
Returns: "Incorrect"
{"RRRRRRRR", "RRRRRRRR", "RRRRRRRR", "RRRRRRRR", "RRRRRRRR", "RRRRRRRR", "RRRRRRRR", "RRRRRRRR"}
Returns: "Incorrect"
{"..R.....", "...RR...", ".R......", ".....RR.", ".R......", "........", "........", "....R..."}
Returns: "Incorrect"
{".RR....R", "..R...R.", "........", "........", "........", ".......R", "RR......", "........"}
Returns: "Incorrect"
{"..R.....", "R.....R.", "....RR..", "........", "........", ".R....R.", ".......R", "........"}
Returns: "Incorrect"
{"......R.", ".......R", "..R.....", ".RR....R", "..R.....", "........", "........", ".R......"}
Returns: "Incorrect"
{"......R.", "R.......", "R...R...", "........", "...R....", "......R.", "..R.....", "....R..."}
Returns: "Incorrect"
{"........", ".....R..", "....R...", ".RR.RR..", "........", "..R....R", "........", "........"}
Returns: "Incorrect"
{"...R.R..", "........", "........", "..R.....", "........", ".......R", "R.R.R...", ".....R.."}
Returns: "Incorrect"
{"..R.....", "....R..R", "........", ".....R.R", "........", "........", "RR...R..", "........"}
Returns: "Incorrect"
{"R.......", ".......R", "....R...", ".......R", ".R...RR.", "......R.", "........", "........"}
Returns: "Incorrect"
{"R.......", "......RR", "..R....R", "........", ".....R..", "R.......", "........", "......R."}
Returns: "Incorrect"
{"........", "..R.....", "....R..R", ".R......", "........", "........", "....RRR.", "......R."}
Returns: "Incorrect"
{"R.R..R..", "R...R...", "........", "........", "R.......", "....R.R.", "........", "........"}
Returns: "Incorrect"
{"R..R....", "........", "........", "..R.....", "......R.", "........", ".....R..", "..R.RR.."}
Returns: "Incorrect"
{"........", "......R.", "RRR.....", "........", "........", ".......R", "R.......", "..R.R..."}
Returns: "Incorrect"
{".....R.R", ".....RRR", ".......R", "....R...", "........", "........", "........", ".R......"}
Returns: "Incorrect"
{"...R....", ".....R..", ".....R..", ".R......", "......R.", "....RR..", "........", "...R...."}
Returns: "Incorrect"
{"........", "R.R.....", ".R..R...", "....R...", "......R.", ".....RR.", "........", "........"}
Returns: "Incorrect"
{".R......", "..R...RR", "...R....", "........", ".R......", ".......R", "........", "...R...."}
Returns: "Incorrect"
{".....R.R", "........", "........", ".....R..", "...R..R.", "........", ".....R.R", "....R..."}
Returns: "Incorrect"
{"....R...", "..R.....", "..R...R.", "...R....", ".....R..", ".....RR.", "........", "........"}
Returns: "Incorrect"
{"R.......", ".R......", "..R.....", "...R....", "....R...", ".....R..", "......R.", ".......R" }
Returns: "Correct"
{"........", "....R...", "........", ".R......", "........", "........", "..R.....", "........" }
Returns: "Incorrect"
{"R.......", ".RR.....", "........", "...R....", "....R...", ".....R..", "......R.", ".......R" }
Returns: "Incorrect"
{"RRRRRRRR", "........", "........", "........", "........", "........", "........", "........" }
Returns: "Incorrect"
{".R......", "R.......", "..R.....", "...R....", "....R...", ".....R..", "......R.", ".......R" }
Returns: "Correct"
{"R.......", "R.......", "R.......", "R.......", "R.......", "R.......", "R.......", "R......." }
Returns: "Incorrect"
{"R.......", ".R......", "..R.....", "...R....", "....R...", ".....R..", "......RR", ".......R" }
Returns: "Incorrect"
{"R......R", ".R......", "..R.....", "...R....", "....R...", ".....R..", "......R.", ".......R" }
Returns: "Incorrect"
{"RR......", ".R......", "..R.....", "...R....", "....R...", ".....R..", "......R.", ".......R" }
Returns: "Incorrect"
{"........", "........", "........", "........", "........", "........", "........", "........" }
Returns: "Incorrect"
{"R.......", ".R......", ".RR.....", "...R....", "....R...", ".....R..", "......R.", ".......R" }
Returns: "Incorrect"
{"RR......", "..R.....", "...R....", "....R...", ".....R..", "......R.", ".......R", "........" }
Returns: "Incorrect"
{"RR......", "........", "..R.....", "...R....", "....R...", ".....R..", "......R.", ".......R" }
Returns: "Incorrect"