当前你的浏览器版本过低,网站已在兼容模式下运行,兼容模式仅提供最小功能支持,网站样式可能显示不正常。
请尽快升级浏览器以体验网站在线编辑、在线运行等功能。

建议使用的浏览器:

谷歌Chrome 火狐Firefox Opera浏览器 微软Edge浏览器 QQ浏览器 360浏览器 傲游浏览器

6111:迷宫出逃

题目描述
小明又一次陷入了大魔王的迷宫,在无人机的帮忙下,小明获得了整个迷宫的草图。


不同于一般的迷宫,魔王在迷宫里安置了机关,一旦触碰,那么四个方向所在的格子,将翻转其可达性(原先可通过的格子不可通过,反之亦然,机关可以反复触发)。为了防止小明很容易地出逃,魔王在临走前把钥匙丢在了迷宫某处,只有拿到钥匙,小明才能开门在出口处离开迷宫。

万般无奈之下,小明想借助聪明的你,帮忙计算是否有机会离开这个迷宫,最少需要多少时间。(每一单位时间只能向四邻方向走一步)
输入解释
第一行为 T,表示输入数据组数。

下面 T 组数据,对于每组数据:

第一行是两个数字 n, m(2 < n * m <= 64),表示迷宫的长与宽。

接下来 n 行,每行 m 个字符,‘.’表示空地可以通过,‘x’表示陷阱,‘*’表示机关,‘S’代表起点,‘E’代表出口,‘K’表示钥匙(保证存在且只有一个)。
输出解释
对第 i 组数据,输出

Case #i:

然后输出一行,仅包含一个整数,表示最少多少步能够拿到钥匙并走出迷魂阵,如果不能则打出-1。
输入样例
5
5 7
...*x..
...x...
xEx....
*x...K.
.x*...S
5 7
K..*x..
...x...
xEx....
*x.....
.x*...S
5 7
..K*x..
..*x*..
xEx....
*x.....
.x*...S
5 7
..K*x..
.*xx*..
*E*....
xx.....
.x*...S
4 4
S*..
**..
...E
...K
输出样例
Case #1:
11
Case #2:
13
Case #3:
13
Case #4:
11
Case #5:
-1
来自杭电HDUOJ的附加信息
Recommend liuyiding

该题目是Virtual Judge题目,来自 杭电HDUOJ

源链接: HDU-6111

最后修改于 2020-10-25T23:28:27+00:00 由爬虫自动更新

共提交 4

通过率 0.0%
时间上限 内存上限
2000/1000MS(Java/Others) 32768/32768K(Java/Others)