A8038.地宫2
普及/提高-
官方
通过率:0%
时间限制:1.00s
内存限制:128MB
题目描述
一个迷宫由 R 行 C 列格子组成,有的格子里有障碍物,不能走;有的格子是空地,可以走,还有的是传送门,走到传送门可以瞬间传送至任意传送门(不消耗步数)。
给定一个迷宫,求从左上角走到右下角最少需要走多少步。每步只能向上下左右四个方向走一步,不能斜着走。
输入格式
第一行是两个整数,R,C(1≤R,C≤40),代表迷宫的长和宽。
接下来是 R 行,每行 C 个字符,代表整个迷宫。
空地格子用'.'
表示,有障碍物的格子用'#'
表示,传送门用'$'
表示,传送门数目小于 10。
迷宫左上角和右下角都是'.'
。
输出格式
输出从左上角走到右下角至少要经过多少步。计算步数要包括起点和终点。如果走不到终点输出 −1。
输入输出样例
输入#1
5 5 .$### ##... #.#.# #.#.# #.#$.
输出#1
3