Score : $500$ points
We have an $N \times N$ chessboard. Let $(i, j)$ denote the square at the $i$-th row from the top and $j$-th column from the left of this board.
The board is described by $N$ strings $S_i$.
The $j$-th character of the string $S_i$, $S_{i,j}$, means the following.
.
, the square $(i, j)$ is empty.#
, the square $(i, j)$ is occupied by a white pawn, which cannot be moved or removed.We have put a white bishop on the square $(A_x, A_y)$.
Find the minimum number of moves needed to move this bishop from $(A_x, A_y)$ to $(B_x, B_y)$ according to the rules of chess (see Notes).
If it cannot be moved to $(B_x, B_y)$, report -1
instead.
A white bishop on the square $(i, j)$ can go to the following positions in one move.
For each positive integer $d$, it can go to $(i+d,j+d)$ if all of the conditions are satisfied.
For each positive integer $d$, it can go to $(i+d,j-d)$ if all of the conditions are satisfied.
For each positive integer $d$, it can go to $(i-d,j+d)$ if all of the conditions are satisfied.
For each positive integer $d$, it can go to $(i-d,j-d)$ if all of the conditions are satisfied.
.
and #
..
.
Input is given from Standard Input in the following format:
$N$ $A_x$ $A_y$ $B_x$ $B_y$ $S_1$ $S_2$ $\vdots$ $S_N$
Print the answer.
5 1 3 3 5 ....# ...#. ..... .#... #....
3
We can move the bishop from $(1,3)$ to $(3,5)$ in three moves as follows, but not in two or fewer moves.
4 3 2 4 2 .... .... .... ....
-1
There is no way to move the bishop from $(3,2)$ to $(4,2)$.
18 18 1 1 18 .................. .####............. .#..#..####....... .####..#..#..####. .#..#..###...#.... .#..#..#..#..#.... .......####..#.... .............####. .................. .................. .####............. ....#..#..#....... .####..#..#..####. .#.....####..#.... .####.....#..####. ..........#..#..#. .............####. ..................
9