一道头疼的编程题(Pascal) by:zerojudge

来源:百度知道 编辑:UC知道 时间:2024/06/03 17:44:22
一道头疼的编程题(Pascal) by:zerojudge

楼主你好。

你要的题在这里:

一道头疼的编程题(Pascal) by:zerojudge

c124: Dungeon Master

内容:
你陷入一个 3D 城堡的迷宫中, 需要找到一条快速的路逃出去! 这个城堡由空的或填满石头的立方体组成,向东、西、南、北以及上、下移动一个单位个需要一分钟。你不能斜的移动, 并且迷宫最外层的每一面都包含着坚固的石墙。可能逃的出去吗?如果可能的话,,最少需要花多少时间呢?

输入说明:
输入含有多组测试资料,每组测试资料的第一列有3个正整数L、R、C(均介于1到30之间)。

L 表示迷宫有几层
R 和 C 表示每层有几列几行

之后共有L个区块(每个区块代表一层),每个区块含有 R 列,每列有 C 个字元。 每个字元表示迷宫的一个单位。 '#'表示这个单位充满石头, 而 '.' 表示这是个空的空间。你的起始位置在标明 'S' 的地方, 出口在 'E' 之处. 在一层描述完后有一列空白区隔。 若L=R=C=0 代表输入结束,请参考Sample Input。

输出说明:
每个迷宫有一列的输出。 如果可以达到出口的话, 请输出:Escaped in x minute(s).其中的 x 表示最短离开时间。如果没有办法逃出去请输出:Trapped!

范例输入:
若题目没有特别说明,则应该以多测资的方式读取,若不知如何读取请参考 a001 的范例程式。 3 4 5
S....
.###.
.##..
###.#

#####
#####
##.##
##...

#####
#####
#.###
####E

1 3 3
S##
#E#
###

0 0 0

范例输出 :
Escaped in 1