python算法题——搜索篇 Poj2251

地下城大师

描述

你被 困在一个3D地牢里,需要找到最快的出路!地牢由单位立方体组成,这些立方体可能会也可能不会充满岩石。将一个单元向北、向南、向东、向西、向上或向下移动需要一分钟。你不能对角线移动,迷宫四面都是坚硬的岩石。

逃脱可能吗?如果是,需要多长时间?

输入

输入由许多地牢组成。每个地牢描述都以包含三个整数 L、R 和 C 的行开头(大小限制为 30)。 L是构成地牢的关卡数。 R 和 C 是构成每个级别计划的行数和列数。 然后接下来是 L 个 R 行块,每个块都包含 C 字符。每个角色描述地牢的一个牢房。充满岩石的单元格由“#”表示,空单元格由“.”表示。您的起始位置由“S”表示,退出位置由字母“E”表示。每个级别后都有一个空白行。输入由 L、R 和 C 的三个零终止。

输出

如果能够出逃,print Escaped in x minute(s).

不能,print Trapped!

思路,这是一个三维的迷宫

打表:

dx = [1, -1, 0, 0, 0, 0]
​
dy = [0, 0, 1, -1, 0, 0]
​
dz = [0, 0, 0, 0, 1, -1]

接受输入代码

L, R, C = map(int, input().split())

S:表示Start

E:表示End

接下来需要接收每一层的输入,可以采用三维数组

maps = [[[0 for i in range(L)]for i in range(R)]for i in range(C)]
​
for i in range(L):
    for j in range(R + 1):
        maps[i][j] = input()
        for k in range(C):
   
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值