#YbtOJ19. 追捕小狗

追捕小狗

No testdata at current.

题目描述

有一个 n×nn \times n 的地图,你的小狗溜进了这个地图了,你需要求追捕它。

小狗进入这个地图的时候已经失去思绪处于迷乱状态,它每秒钟只会沿着他的方向直线前进一格,如果遇到障碍物或者迷宫边界,他会立刻向右旋转 90°90°(不会花去时间),继续沿直线前进(初始方向向北)。

你每秒钟可以向上、下、左、右四个方向移动一格,如果你和小狗某一秒在同一个位置,你就抓住小狗了。

请你求出捉住小狗的最短时间。

注:每秒是你先扩展,然后小狗再扩展

输入格式

第一行是一个整数 nn

以下 nn 行,每行 nn 个字符,* 表示障碍物,. 表示空地,J 表示小狗,F 表示你,上北下南左西右东。

输出格式

输出数据仅一行,如果你能捉到小狗,那么输出所需的最短时间。否则输出 No solution.

样例

样例输入

3
F*J
.*.
...

样例输出

3

数据范围与提示

对于 100%100\% 的数据,2 < n < 100。