Problem4806--迷宫(三)

4806: 迷宫(三)

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

Description

经过思考小 A 终于解决了怎么计算一个迷宫的最短路问题,于是小 A 找到一个新的迷宫图,来验证自己是否真的会计算一个迷宫的最短路。
为了检验自己计算的是否正确,特邀你一起来计算。

Input

第一行输入两个整数 nnnmmm,表示这是一个 n×mn \times mn×m 的迷宫。
接下来的输入一个 nnnmmm 列的迷宫。其中'@'表示小 A 的位置,'#'表示墙,无法通过,'.'表示路,可以通过'.'移动,所有在迷宫最外围的'.'都表示迷宫的出口(每次只能移动到四个与他相邻的位置——上,下,左,右)。

Output

输出整数,表示逃出迷宫的最少步数,如果无法逃出迷宫输出 −1-11

Constraints

$1 \le n,m \le 15$

Sample 1 Input

9 13
#############
#@..........#
#####.#.#.#.#
#...........#
#.#.#.#.#.#.#
#.#.......#.#
#.#.#.#.#.#.#
#...........#
#####.#######

Sample 1 Output

11

Source/Category

基础算法 4.100.BFS