4806: 迷宫(三)
[Creator : ]
Description
经过思考小 A 终于解决了怎么计算一个迷宫的最短路问题,于是小 A 找到一个新的迷宫图,来验证自己是否真的会计算一个迷宫的最短路。
为了检验自己计算的是否正确,特邀你一起来计算。
为了检验自己计算的是否正确,特邀你一起来计算。
Input
第一行输入两个整数 nnn 和 mmm,表示这是一个 n×mn \times mn×m 的迷宫。
接下来的输入一个 nnn 行 mmm 列的迷宫。其中'@'表示小 A 的位置,'#'表示墙,无法通过,'.'表示路,可以通过'.'移动,所有在迷宫最外围的'.'都表示迷宫的出口(每次只能移动到四个与他相邻的位置——上,下,左,右)。
接下来的输入一个 nnn 行 mmm 列的迷宫。其中'@'表示小 A 的位置,'#'表示墙,无法通过,'.'表示路,可以通过'.'移动,所有在迷宫最外围的'.'都表示迷宫的出口(每次只能移动到四个与他相邻的位置——上,下,左,右)。
Output
输出整数,表示逃出迷宫的最少步数,如果无法逃出迷宫输出 −1-1−1。
Constraints
$1 \le n,m \le 15$。
Sample 1 Input
9 13
#############
#@..........#
#####.#.#.#.#
#...........#
#.#.#.#.#.#.#
#.#.......#.#
#.#.#.#.#.#.#
#...........#
#####.#######
Sample 1 Output
11