Problem Statement
You are working on a text-based checkers program, and you need to write a module to display the state of the board to the user. The board has 8 rows labeled 1 to 8 from top to bottom, and 8 columns labeled A to H from left to right. The cells alternate colors black and white, and no two horizontally or vertically adjacent cells can have the same color. Cell A1 is black. Each piece on the board is either black or white, depending on the player who owns it. You want to draw the board by printing 8 rows of 8 characters where each character is one of the following:
- '.' - an empty white cell.
- '#' - an empty black cell.
- 'W' - a cell with a white piece on it.
- 'B' - a cell with a black piece on it.
B.B.B.B. .B.B.B.B B.B.B.B. .#.#.#.# #.#.#.#. .W.W.W.W W.W.W.W. .W.W.W.W
You are given a
Definition
- Class:
- TextBoard
- Method:
- draw
- Parameters:
- String[]
- Returns:
- String[]
- Method signature:
- String[] draw(String[] pieces)
- (be sure your method is public)
Notes
- Even though in a regular checkers game pieces are never placed on the white cells, your playing program may contain bugs so you want to print the pieces that landed up on the white cells too.
- Similarly you might get more than the usual 12 each of white or black pieces.
Constraints
- pieces will contain between 0 and 50 elements, inclusive.
- Each element of pieces will be formatted as described in the problem statement.
- No two pieces will be on the same cell.
Examples
{"WHITE B2", "BLACK A3"}
Returns: {"#.#.#.#.", ".W.#.#.#", "B.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#" }
A board with two pieces on it, a white one on B2 and a black one on A3.
{"BLACK A1", "BLACK C1", "BLACK E1", "BLACK G1", "BLACK B2", "BLACK D2", "BLACK F2", "BLACK H2", "BLACK A3", "BLACK C3", "BLACK E3", "BLACK G3", "WHITE B6", "WHITE D6", "WHITE F6", "WHITE H6", "WHITE A7", "WHITE C7", "WHITE E7", "WHITE G7", "WHITE B8", "WHITE D8", "WHITE F8", "WHITE H8"}
Returns: {"B.B.B.B.", ".B.B.B.B", "B.B.B.B.", ".#.#.#.#", "#.#.#.#.", ".W.W.W.W", "W.W.W.W.", ".W.W.W.W" }
The example from the problem statement.
{"BLACK A1", "BLACK A2", "BLACK A3", "BLACK A4", "BLACK A5", "BLACK A6", "BLACK A7", "BLACK A8", "BLACK B1", "WHITE B2", "WHITE B3", "WHITE B4", "WHITE B5", "WHITE B6", "WHITE B7", "BLACK B8", "BLACK C1", "WHITE C2", "WHITE C7", "BLACK C8", "BLACK D1", "WHITE D2", "WHITE D7", "BLACK D8", "BLACK E1", "WHITE E2", "WHITE E7", "BLACK E8", "BLACK F1", "WHITE F2", "WHITE F7", "BLACK F8", "BLACK G1", "WHITE G2", "WHITE G3", "WHITE G4", "WHITE G5", "WHITE G6", "WHITE G7", "BLACK G8", "BLACK H1", "BLACK H2", "BLACK H3", "BLACK H4", "BLACK H5", "BLACK H6", "BLACK H7", "BLACK H8"}
Returns: {"BBBBBBBB", "BWWWWWWB", "BW#.#.WB", "BW.#.#WB", "BW#.#.WB", "BW.#.#WB", "BWWWWWWB", "BBBBBBBB" }
Not really a valid situation.
{}
Returns: {"#.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#" }
{"WHITE H8"}
Returns: {"#.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.W" }
{"WHITE C3","WHITE A5","WHITE A2","BLACK C4","WHITE A8","WHITE C2","BLACK B7","WHITE E4","BLACK F5","WHITE G6","BLACK H5","BLACK F3","WHITE H6","WHITE E6","BLACK G5"}
Returns: {"#.#.#.#.", "W#W#.#.#", "#.W.#B#.", ".#B#W#.#", "W.#.#BBB", ".#.#W#WW", "#B#.#.#.", "W#.#.#.#" }
{"BLACK A1", "BLACK C1", "BLACK E1", "BLACK G1", "BLACK B2", "BLACK D2", "BLACK F2", "BLACK H2","BLACK A3", "BLACK C3", "BLACK E3", "BLACK G3", "WHITE B6", "WHITE D6", "WHITE F6", "WHITE H6", "WHITE A7", "WHITE C7", "WHITE E7", "WHITE G7", "WHITE B8", "WHITE D8", "WHITE F8", "WHITE H8"}
Returns: {"B.B.B.B.", ".B.B.B.B", "B.B.B.B.", ".#.#.#.#", "#.#.#.#.", ".W.W.W.W", "W.W.W.W.", ".W.W.W.W" }
{"BLACK A1", "BLACK A2", "BLACK A3", "BLACK A4", "BLACK A5", "BLACK A6", "BLACK A7", "BLACK A8", "BLACK B1", "BLACK B8", "BLACK C1", "BLACK C8", "BLACK D1", "BLACK D8", "BLACK E1", "BLACK E8", "BLACK F1", "BLACK F8", "BLACK G1", "BLACK G8", "BLACK H1", "BLACK H2", "BLACK H3", "BLACK H4", "BLACK H5", "BLACK H6", "BLACK H7", "BLACK H8"}
Returns: {"BBBBBBBB", "B#.#.#.B", "B.#.#.#B", "B#.#.#.B", "B.#.#.#B", "B#.#.#.B", "B.#.#.#B", "BBBBBBBB" }
{"BLACK B4", "BLACK C3", "BLACK C5", "BLACK D3", "BLACK D5", "BLACK E3", "BLACK E5", "BLACK F4"}
Returns: {"#.#.#.#.", ".#.#.#.#", "#.BBB.#.", ".B.#.B.#", "#.BBB.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#" }
{"WHITE A1", "WHITE A8", "BLACK B4", "BLACK C3", "BLACK C5", "WHITE C8", "BLACK D3", "BLACK D5", "WHITE D8", "BLACK E3", "BLACK E5", "WHITE E8", "WHITE F1", "BLACK F4", "WHITE F8", "WHITE H1", "WHITE H8" }
Returns: {"W.#.#W#W", ".#.#.#.#", "#.BBB.#.", ".B.#.B.#", "#.BBB.#.", ".#.#.#.#", "#.#.#.#.", "W#WWWW.W" }
{"BLACK A1", "BLACK A2", "BLACK A3", "BLACK A4", "BLACK A5", "BLACK A6", "BLACK A7", "BLACK A8", "BLACK B1", "BLACK B2", "BLACK B3", "BLACK B4", "BLACK B5", "BLACK B6", "BLACK B7", "BLACK B8", "BLACK C1", "BLACK C2", "BLACK C3", "BLACK C4", "BLACK C5", "BLACK C6", "BLACK C7", "BLACK C8", "BLACK D1", "BLACK D2", "BLACK D3", "BLACK D4", "BLACK D5", "BLACK D6", "BLACK D7", "BLACK D8", "BLACK E1", "BLACK E2", "BLACK E3", "BLACK E4", "BLACK E5", "BLACK E6", "BLACK E7", "BLACK E8", "BLACK F1", "BLACK F2", "BLACK F3", "BLACK F4", "BLACK F5", "BLACK F6", "BLACK F7", "BLACK F8", "BLACK G7", "BLACK G8" }
Returns: {"BBBBBB#.", "BBBBBB.#", "BBBBBB#.", "BBBBBB.#", "BBBBBB#.", "BBBBBB.#", "BBBBBBB.", "BBBBBBB#" }
{"WHITE B7", "WHITE B8", "WHITE C1", "WHITE C2", "WHITE C3", "WHITE C4", "WHITE C5", "WHITE C6", "WHITE C7", "WHITE C8", "WHITE D1", "WHITE D2", "WHITE D3", "WHITE D4", "WHITE D5", "WHITE D6", "WHITE D7", "WHITE D8", "WHITE E1", "WHITE E2", "WHITE E3", "WHITE E4", "WHITE E5", "WHITE E6", "WHITE E7", "WHITE E8", "WHITE F1", "WHITE F2", "WHITE F3", "WHITE F4", "WHITE F5", "WHITE F6", "WHITE F7", "WHITE F8", "WHITE G1", "WHITE G2", "WHITE G3", "WHITE G4", "WHITE G5", "WHITE G6", "WHITE G7", "WHITE G8", "WHITE H1", "WHITE H2", "WHITE H3", "WHITE H4", "WHITE H5", "WHITE H6", "WHITE H7", "WHITE H8"}
Returns: {"#.WWWWWW", ".#WWWWWW", "#.WWWWWW", ".#WWWWWW", "#.WWWWWW", ".#WWWWWW", "#WWWWWWW", ".WWWWWWW" }
{"BLACK H1" }
Returns: {"#.#.#.#B", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#" }
{"BLACK A1" }
Returns: {"B.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#" }
{"BLACK H8" }
Returns: {"#.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.B" }
{"BLACK A8" }
Returns: {"#.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#", "#.#.#.#.", "B#.#.#.#" }
{"WHITE H1" }
Returns: {"#.#.#.#W", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#" }
{"WHITE A1" }
Returns: {"W.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#" }
{"WHITE H8" }
Returns: {"#.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.W" }
{"WHITE A8" }
Returns: {"#.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#", "#.#.#.#.", "W#.#.#.#" }
{"WHITE D5", "BLACK E4" }
Returns: {"#.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#B#.#", "#.#W#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#" }
{"BLACK D4", "WHITE D5", "BLACK E4", "WHITE E5" }
Returns: {"#.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.BB#.#", "#.#WW.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#" }
{"BLACK H7","WHITE D5","BLACK G1","WHITE C2","WHITE G8","BLACK D7","BLACK F8","WHITE G2","WHITE A2"}
Returns: {"#.#.#.B.", "W#W#.#W#", "#.#.#.#.", ".#.#.#.#", "#.#W#.#.", ".#.#.#.#", "#.#B#.#B", ".#.#.BW#" }
{"BLACK C1","WHITE G8","WHITE F5","WHITE H7","BLACK B7","WHITE D3","WHITE F4","WHITE D6","BLACK B8","BLACK F3","BLACK A2","WHITE B3","BLACK C8","BLACK C3","WHITE F6","WHITE E4","WHITE C7","BLACK B4","BLACK A7","BLACK B5","BLACK E3","BLACK D1","BLACK C5","WHITE G7","WHITE A1","BLACK E6","WHITE A5","WHITE G5","BLACK C2"}
Returns: {"W.BB#.#.", "B#B#.#.#", "#WBWBB#.", ".B.#WW.#", "WBB.#WW.", ".#.WBW.#", "BBW.#.WW", ".BB#.#W#" }
{"WHITE G4","BLACK A2","BLACK G3","WHITE E7","WHITE B3","WHITE D4","WHITE A7","WHITE H6","WHITE G5","BLACK F8","BLACK H2","WHITE B5","WHITE F1","BLACK A6","WHITE C4","BLACK E3","BLACK G8","WHITE H1","BLACK G2","BLACK C2","WHITE H8","WHITE H3"}
Returns: {"#.#.#W#W", "B#B#.#BB", "#W#.B.BW", ".#WW.#W#", "#W#.#.W.", "B#.#.#.W", "W.#.W.#.", ".#.#.BBW" }
{"WHITE H2","BLACK C2","WHITE C8","BLACK D5","BLACK F2","WHITE G6","BLACK G8","BLACK D2","WHITE G2","BLACK B8","WHITE E1","WHITE E7","BLACK D1","BLACK E6","BLACK A4","BLACK D7","BLACK H3","BLACK A2","WHITE A8","BLACK C5","WHITE E3","WHITE A7","BLACK C3","WHITE G3","BLACK F4","BLACK D4"}
Returns: {"#.#BW.#.", "B#BB.BWW", "#.B.W.WB", "B#.B.B.#", "#.BB#.#.", ".#.#B#W#", "W.#BW.#.", "WBW#.#B#" }
{"BLACK H6","BLACK G4","WHITE A7","BLACK G5"}
Returns: {"#.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#B#", "#.#.#.B.", ".#.#.#.B", "W.#.#.#.", ".#.#.#.#" }
{"WHITE C2","WHITE D6","BLACK F3","BLACK G7","BLACK F7","BLACK B3","BLACK F1","BLACK G8","WHITE C5","BLACK E4","BLACK E3","WHITE B2","BLACK A4","WHITE E5","WHITE B5","WHITE C1","WHITE H4","BLACK H6","BLACK B4","WHITE D2","WHITE G4","WHITE C7","WHITE F6","WHITE D5","BLACK C6","BLACK B7","BLACK A1","BLACK A2","BLACK H2","WHITE D1","WHITE F8"}
Returns: {"B.WW#B#.", "BWWW.#.B", "#B#.BB#.", "BB.#B#WW", "#WWWW.#.", ".#BW.W.B", "#BW.#BB.", ".#.#.WB#" }
{"BLACK D3","BLACK H7","BLACK G6","BLACK A6","WHITE C4","WHITE C2","WHITE H4","WHITE B5","BLACK F2","BLACK H8","BLACK B6","BLACK G4","BLACK E2","WHITE E5","WHITE H1","WHITE G5","BLACK A3","WHITE B1","WHITE C7","WHITE C5","WHITE D4","BLACK C6","BLACK D5","BLACK A7","WHITE D8","WHITE D6","WHITE E1","BLACK F3"}
Returns: {"#W#.W.#W", ".#W#BB.#", "B.#B#B#.", ".#WW.#BW", "#WWBW.W.", "BBBW.#B#", "B.W.#.#B", ".#.W.#.B" }
{"WHITE C7","WHITE B6","BLACK D2","BLACK A2","BLACK B7","WHITE C6","BLACK D5","BLACK D6","BLACK D7","BLACK E2","BLACK G5","WHITE G2","BLACK E6","BLACK F4","WHITE G6","WHITE B2","WHITE E4","BLACK D4","BLACK F2","BLACK A1","BLACK E5","WHITE A4","WHITE C3","WHITE A5","WHITE C8","WHITE D1","BLACK H6","WHITE H7","WHITE A8"}
Returns: {"B.#W#.#.", "BW.BBBW#", "#.W.#.#.", "W#.BWB.#", "W.#BB.B.", ".WWBB#WB", "#BWB#.#W", "W#W#.#.#" }
{"BLACK D5","BLACK C3","WHITE A8","WHITE G1","WHITE C4","WHITE D2","WHITE F5","WHITE C8","BLACK D1","BLACK H1","WHITE H7","WHITE D4","WHITE D7","WHITE F7","BLACK C1","BLACK G5","WHITE F1","BLACK A2","WHITE G7","BLACK F6","WHITE G4","WHITE C5","BLACK C7","BLACK D8","BLACK E1","WHITE A1","WHITE F3","BLACK B3","BLACK A4"}
Returns: {"W.BBBWWB", "B#.W.#.#", "#BB.#W#.", "B#WW.#W#", "#.WB#WB.", ".#.#.B.#", "#.BW#WWW", "W#WB.#.#" }
{"BLACK A8","BLACK B1","WHITE E4","WHITE C5","WHITE A4","WHITE D3","BLACK G4","BLACK F5","WHITE E2","WHITE F8","WHITE C7","WHITE B7","WHITE F6","WHITE H5","WHITE A3","BLACK E8","WHITE C4","WHITE H2","WHITE D4","BLACK B5","WHITE C2"}
Returns: {"#B#.#.#.", ".#W#W#.W", "W.#W#.#.", "W#WWW#B#", "#BW.#B#W", ".#.#.W.#", "#WW.#.#.", "B#.#BW.#" }
{"BLACK F7","WHITE D4","BLACK F8","BLACK E7","WHITE H8","WHITE F4","WHITE A1","BLACK C8","BLACK C1","WHITE F2","WHITE F6","BLACK E2","BLACK H4","WHITE B5","BLACK C3","BLACK H1"}
Returns: {"W.B.#.#B", ".#.#BW.#", "#.B.#.#.", ".#.W.W.B", "#W#.#.#.", ".#.#.W.#", "#.#.BB#.", ".#B#.B.W" }
{"BLACK C7","BLACK H1","BLACK C3","WHITE D5","BLACK A7","BLACK G3","WHITE B3","WHITE D4","BLACK B4","BLACK E2","BLACK B6","BLACK E5","BLACK C1","WHITE A3","WHITE E7","WHITE B1","WHITE B7"}
Returns: {"#WB.#.#B", ".#.#B#.#", "WWB.#.B.", ".B.W.#.#", "#.#WB.#.", ".B.#.#.#", "BWB.W.#.", ".#.#.#.#" }
{"WHITE E3","WHITE B4","BLACK H3","WHITE A3","BLACK B2","BLACK A4","WHITE H6","WHITE H7","BLACK E5","WHITE C3","WHITE F6","BLACK F7","BLACK C4","BLACK F1","WHITE G6","WHITE H4","WHITE F8","WHITE E7","BLACK C5","BLACK C1","BLACK D4","BLACK B6","WHITE A1","WHITE E1","WHITE A7","BLACK G1","BLACK A5","BLACK F2","BLACK B1","WHITE B3","BLACK C6"}
Returns: {"WBB.WBB.", ".B.#.B.#", "WWW.W.#B", "BWBB.#.W", "B.B.B.#.", ".BB#.WWW", "W.#.WB#W", ".#.#.W.#" }
{"BLACK F5","BLACK F2","BLACK H3","WHITE A3","WHITE G7","WHITE G1","WHITE G4","WHITE A7","BLACK D7","BLACK E6","BLACK C4","WHITE H6","WHITE E3","WHITE A5","WHITE D2","WHITE F8","BLACK C2","WHITE C7","WHITE F3","BLACK D6","WHITE A6","WHITE G6","BLACK E4","BLACK F1","BLACK E2","BLACK B8","WHITE A1","WHITE E1","WHITE D8","WHITE H1","BLACK G3","BLACK H4","WHITE A4","BLACK B7","WHITE B6","BLACK H7","WHITE C6"}
Returns: {"W.#.WBWW", ".#BWBB.#", "W.#.WWBB", "W#B#B#WB", "W.#.#B#.", "WWWBB#WW", "WBWB#.WB", ".B.W.W.#" }
{"BLACK A5","WHITE D2","BLACK F5","WHITE C7","BLACK H5","WHITE C3","BLACK F7","BLACK D5","WHITE G5","BLACK D3","BLACK D4","BLACK A8","WHITE A3","BLACK G7","BLACK A1","BLACK D7"}
Returns: {"B.#.#.#.", ".#.W.#.#", "W.WB#.#.", ".#.B.#.#", "B.#B#BWB", ".#.#.#.#", "#.WB#BB.", "B#.#.#.#" }
{"BLACK E1","BLACK F2"}
Returns: {"#.#.B.#.", ".#.#.B.#", "#.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#" }
{"BLACK G8","BLACK E7","WHITE E2","BLACK G3","WHITE E8","BLACK F1","BLACK A5","BLACK G6","WHITE A7","BLACK D7","BLACK H6","BLACK F8","WHITE E6","WHITE D5","BLACK E1","WHITE D2","WHITE A3","BLACK C5","BLACK B8","BLACK B3"}
Returns: {"#.#.BB#.", ".#.WW#.#", "WB#.#.B.", ".#.#.#.#", "B.BW#.#.", ".#.#W#BB", "W.#BB.#.", ".B.#WBB#" }
{"BLACK F5","WHITE B8","BLACK G8","WHITE D7","BLACK C8","BLACK A6","BLACK G6"}
Returns: {"#.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#", "#.#.#B#.", "B#.#.#B#", "#.#W#.#.", ".WB#.#B#" }
{"BLACK F3","WHITE H2","WHITE E1","BLACK H5","BLACK E3","BLACK H3","WHITE G7","WHITE C2","WHITE C5","BLACK A6","BLACK H1","WHITE G8"}
Returns: {"#.#.W.#B", ".#W#.#.W", "#.#.BB#B", ".#.#.#.#", "#.W.#.#B", "B#.#.#.#", "#.#.#.W.", ".#.#.#W#" }
{"WHITE D7","WHITE F3","BLACK F6","BLACK A3","BLACK A6","BLACK C2","BLACK D1","BLACK F4","BLACK G4","BLACK E3","BLACK E4","WHITE A1","WHITE C8","WHITE A4","WHITE D3","WHITE F2","WHITE E7","BLACK C7","WHITE G3","WHITE H1","BLACK D5","WHITE E5","BLACK F5","BLACK E6","WHITE B6","BLACK D4","BLACK A7","WHITE A5","BLACK D8","BLACK G2","BLACK G1","BLACK G6","WHITE F1","WHITE H3"}
Returns: {"W.#B#WBW", ".#B#.WB#", "B.#WBWWW", "W#.BBBB#", "W.#BWB#.", "BW.#BBB#", "B.BWW.#.", ".#WB.#.#" }
{"BLACK H1","WHITE F6","BLACK D4","BLACK B2","BLACK F5","WHITE C5","BLACK F3","BLACK A3","WHITE C3","WHITE E1","WHITE C4","WHITE H5","BLACK A4","BLACK H3","WHITE E5","WHITE A5","WHITE C7","WHITE F7","BLACK B5","BLACK G4","BLACK A8","WHITE D2","BLACK D5","BLACK F2","WHITE C8"}
Returns: {"#.#.W.#B", ".B.W.B.#", "B.W.#B#B", "B#WB.#B#", "WBWBWB#W", ".#.#.W.#", "#.W.#W#.", "B#W#.#.#" }
{"BLACK G5","WHITE B6","BLACK A6","BLACK H4","WHITE C7","BLACK D2","WHITE D1","BLACK B3","BLACK A5","WHITE G6","WHITE H1","WHITE C1","BLACK E2","BLACK B4","WHITE G2","WHITE E8","BLACK D3","BLACK D7","BLACK H5","WHITE A2","BLACK G4","BLACK C3","BLACK A3","BLACK G1","WHITE E7","BLACK E3","BLACK B1","BLACK F7","WHITE F4","WHITE F1","WHITE E4","WHITE C5","WHITE C6","WHITE F2","WHITE E5"}
Returns: {"#BWW#WBW", "W#.BBWW#", "BBBBB.#.", ".B.#WWBB", "B.W.W.BB", "BWW#.#W#", "#.WBWB#.", ".#.#W#.#" }
{"BLACK B7","BLACK C2","BLACK E1","BLACK B2","BLACK C8","WHITE F4","BLACK D4","BLACK H5","WHITE E4","BLACK C4","BLACK D5","BLACK G5","BLACK F7","WHITE C7","BLACK A5","BLACK A1","BLACK G3","WHITE E8","BLACK H1","WHITE C3","BLACK H4","WHITE E7","BLACK A4"}
Returns: {"B.#.B.#B", ".BB#.#.#", "#.W.#.B.", "B#BBWW.B", "B.#B#.BB", ".#.#.#.#", "#BW.WB#.", ".#B#W#.#" }
{"WHITE D4","WHITE D6","BLACK G2","WHITE A4","WHITE F4","BLACK G3","WHITE F7","BLACK D7","WHITE D8","BLACK F1","WHITE E2","WHITE H6","WHITE H8","BLACK G7","BLACK D5","WHITE E4","BLACK E1","BLACK H5","BLACK H1","WHITE A5","WHITE F2","BLACK D1","WHITE B8","BLACK C2","BLACK F8","WHITE B1"}
Returns: {"#W#BBB#B", ".#B#WWB#", "#.#.#.B.", "W#.WWW.#", "W.#B#.#B", ".#.W.#.W", "#.#B#WB.", ".W.W.B.W" }
{"WHITE A8","BLACK C8","WHITE G6","BLACK A2"}
Returns: {"#.#.#.#.", "B#.#.#.#", "#.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#W#", "#.#.#.#.", "W#B#.#.#" }
{"BLACK A1", "BLACK C1", "BLACK E1", "BLACK G1", "BLACK B2", "BLACK D2", "BLACK F2", "BLACK H2", "BLACK A3", "BLACK C3", "BLACK E3", "BLACK G3", "WHITE B6", "WHITE D6", "WHITE F6", "WHITE H6", "WHITE A7", "WHITE C7", "WHITE E7", "WHITE G7", "WHITE B8", "WHITE D8", "WHITE F8", "WHITE H8" }
Returns: {"B.B.B.B.", ".B.B.B.B", "B.B.B.B.", ".#.#.#.#", "#.#.#.#.", ".W.W.W.W", "W.W.W.W.", ".W.W.W.W" }
{"BLACK A1", "BLACK A2", "BLACK A3", "BLACK A4", "BLACK A5", "BLACK A6", "BLACK A7", "BLACK A8", "BLACK B1", "WHITE B2", "WHITE B3", "WHITE B4", "WHITE B5", "WHITE B6", "WHITE B7", "BLACK B8", "BLACK C1", "WHITE C2", "WHITE C7", "BLACK C8", "BLACK D1", "WHITE D2", "WHITE D7", "BLACK D8", "BLACK E1", "WHITE E2", "WHITE E7", "BLACK E8", "BLACK F1", "WHITE F2", "WHITE F7", "BLACK F8", "BLACK G1", "WHITE G2", "WHITE G3", "WHITE G4", "WHITE G5", "WHITE G6", "WHITE G7", "BLACK G8", "BLACK H1", "BLACK H2", "BLACK H3", "BLACK H4", "BLACK H5", "BLACK H6", "BLACK H7", "BLACK H8" }
Returns: {"BBBBBBBB", "BWWWWWWB", "BW#.#.WB", "BW.#.#WB", "BW#.#.WB", "BW.#.#WB", "BWWWWWWB", "BBBBBBBB" }
{"WHITE B2", "BLACK A3" }
Returns: {"#.#.#.#.", ".W.#.#.#", "B.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#" }
{"BLACK A2", "WHITE B2", "BLACK A5", "WHITE B5" }
Returns: {"#.#.#.#.", "BW.#.#.#", "#.#.#.#.", ".#.#.#.#", "BW#.#.#.", ".#.#.#.#", "#.#.#.#.", ".#.#.#.#" }