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