Problem4804--找女朋友

4804: 找女朋友

[Creator : ]
Time Limit : 1.000 sec  Memory Limit : 256 MiB

Description

X 作为户外运动的忠实爱好者,总是不想呆在家里。现在,他想把死宅 Y 从家里拉出来。问从 X 的家到 Y 的家的最短时间是多少。
为了简化问题,我们把地图抽象为 $n * m$ 的矩阵,行编号从上到下为 $1$ 到 $n$,列编号从左到右为 $1$ 到 $m$。矩阵中 ’X’ 表示 X 所在的初始坐标, ’Y’ 表示 Y 的位置, ’#’ 表示当前位置不能走, ’*’ 表示当前位置可以通行。 X 每次只能向上下左右的相邻的 ’*’ 移动,每移动一次耗时 $1$ 秒。

Input

多组输入。
每组测试数据首先输入两个整数 $n,\ m\ (1 \leq n,\ m \leq 15)$ 表示地图大小。
接下来的 $n$ 行,每行 $m$ 个字符。
保证输入数据合法。

Output

若 X 可以到达 Y 的家,输出最少时间,否则输出 $-1$。

Sample 1 Input

3 3
X#Y
***
#*#
3 3
X#Y
*#*
#*#

Sample 1 Output

4
-1

Source/Category

基础算法 4.100.BFS