#P1042. 迷雾圣殿的呼唤
迷雾圣殿的呼唤
题目描述
在一片被古老魔法笼罩的森林深处,坐落着传说中守护着世界本源力量的精灵圣殿。相传,只有心怀纯净信念的探索者才能穿过这片布满魔法屏障的丛林,获得精灵族世代守护的智慧结晶。然而,数百年来,无数怀揣梦想的冒险者迷失在这片充满奇幻色彩的迷宫中,再也没能返回。
这座魔法迷宫由 行 列的魔法阵构成。有些魔法阵被神秘的魔法屏障覆盖,任何触碰者都会瞬间灰飞烟灭;而另一些魔法阵则生长着闪烁微光的魔法石,指引着安全的道路。当月光升至最高点时,森林入口(迷宫左上角)处的魔法阵会开启,而位于迷宫最深处的圣殿(迷宫右下角)则会发出璀璨的光芒,形成唯一的出口。
现在,你作为一名勇敢的年轻魔法师带着你的精灵伙伴来到了森林入口。你们需要找到一条从入口 到圣殿 的安全路径,每次移动可以通过上下左右相邻的房间。现在你需要判断是否存在这样一条通路。
输入格式
第一行:两个整数 和 ,表示迷宫的行数和列数。
接下来 行:每行 个字符,描述迷宫布局:
.表示可通行的魔法阵#表示被黑暗魔法笼罩的障碍物
输出格式
如果存在一条路径可以从迷宫的入口走到圣殿,输出 YES;否则,输出 NO。
输入输出样例
输入 #1
5 5
..###
#....
#.#.#
#.#.#
#.#..
输出 #1
YES
说明/提示
样例 1 解释
该迷宫从 出发,可以到达 。一条可行的路径为:
$(1,1) \to (1,2) \to (2,2) \to (2,3) \to (2,4) \to (3,4) \to (4,4) \to (5,4) \to (5,5)$。
因此输出 YES。
数据范围
对于所有测试数据,,。
迷宫只包含字符 . 和 #,且保证起点 不是屏障(即为 .)。
| 测试点 | ||
|---|---|---|