W razie problemów technicznych ze Szkopułem, prosimy o kontakt mailowy pod adresem [email protected].
Jeśli chciałbyś porozmawiać o zadaniach, rozwiązaniach lub problemach technicznych, zapraszamy na serwery Discord. Są one moderowane przez społeczność, ale członkowie zespołu technicznego też są tam aktywni.
After quite a lot of effort Bytie has finally managed to put rooks on a board of size so that no two of them attack each other. A quick reminder: a rook attacks all the fields of the board that are located in the same row or in the same column as it is1.
Unfortunately, the boy has now accidentally hit the board. As a result, several rooks have fallen down from it. Could you help Bytie put these rooks back on the board? The boy would like to leave the rooks that are still on the board intact.
The first line of the standard input contains one integer () that represents the size of the board. A description of the configuration of the rooks follows: the following lines contain characters each. The character '.' represents an empty field whereas the letter 'W' represents a field occupied by a rook.
You can assume that there are rooks on the board with and that no pair of rooks on the board attacks each other.
Your program should write to the standard output lines containing characters '.' or 'W' each: the final configuration of rooks on the board. The description should contain exactly occurrences of the letter 'W' with rooks placed in the same positions as in the initial board. No two rooks may attack each other. If there are multiple ways of placing rooks on the initial board, your program should output any one of them.
For the input data:
8 ........ .....W.. ..W..... .......W W....... ........ .W...... ........
the correct result is:
...W.... .....W.. ..W..... .......W W....... ....W... .W...... ......W.
Task author: Jakub Radoszewski.
1. See also http://en.wikipedia.org/wiki/Rook_(chess)