关注
def bfs(grid, begin, end):
'''
bfs方法能求得最短路径
:param grid:
:param begin:
:param end:
:return:
'''
n= len(grid)
seen = []
dx = [1, 0, -1, 0] # 四个方位
dy = [0, 1, 0, -1]
level = []
level.append(begin)
seen.append(begin)
step = 0
while level:
queue = []
step += 1
for q in level:
for i in range(4):
nx, ny = q[0] + dx[i], q[1] + dy[i]
if 0 <= nx < n and 0 <= ny < n and grid[nx][ny] != '#':
if [nx, ny ] in end:
return step
if [nx, ny] not in queue and [nx, ny] not in seen:
queue.append([nx, ny])
seen.append([nx, ny])
level = queue
print(level)
return -1
if __name__ == '__main__':
n = int(input())
grid = [['' for _ in range(n)] for _ in range(n)]
g3 = []
begin = []
end = []
# 复制9块迷宫 从中间那块迷宫的起点'S'出发,直到到达任意9块迷宫中的'E'
for i in range(n):
s = input()
g3.append(s*3)
grid[i] = list(s)
if 'S' in s:
begin.append(i+n)
begin.append(s.index('S')+n)
if 'E' in s:
for x in range(0,2*n+1,n):
for y in range(0,2*n+1,n):
end.append([i + x,s.index('E') + y])
maze = []
for i in range(3):
for j in range(len(g3)):
maze.append(g3[j])
print(bfs(maze, begin, end)) 考试完后想到的一种思路: 1、将复制9块迷宫图组装在一起 2、从中间迷宫图的起点到达任意迷宫图的终点即为到达终点,步进方式用bfs
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
03-28 00:43
杭州电子科技大学 C++
找工作勤劳小蜜蜂:矛盾是没有实习,就是没实战经验,公司不想要,公司不要,你就没有实习,你就进入死循环,另外你的项目不是社会现在有大量岗位存在行业用的,云存储人员早就饱和。 点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
- 1... AI Agent 面试 Top50 必刷题2.5W
- 2... 看不懂组内文档,实习怎么偷产出?8644
- 3... 五月了,感觉实习很难找了6033
- 4... 解决了xd们,发了个dy曝光视频,十几万播放,直接让他火速联系我,赔我路费了,兄弟们碰到不公平的违法行为,一定要积极捍卫自己权益6002
- 5... 妈妈只想要你快乐4129
- 6... 要对实习同事表白吗?3859
- 7... 26届双非本求职总结3600
- 8... 三段大厂,说下我见过的最低学历3189
- 9... 理性讨论,卷实习算不算工贼行为?3116
- 10... 实习一个星期,我因为只加了20分钟班被开除了3058
正在热议
更多
# 26届春招投递记录 #
36548次浏览 307人参与
# 你今年的平均薪资是多少? #
230190次浏览 1069人参与
# 如何成为1个AI工程师? #
5766次浏览 281人参与
# 携程笔试 #
180065次浏览 928人参与
# 27届实习投递记录 #
121891次浏览 1382人参与
# 我想象的实习vs现实的实习 #
340796次浏览 2316人参与
# 求职你最看重什么? #
170396次浏览 915人参与
# 秋招提前批,你开始投了吗 #
766642次浏览 8495人参与
# 工作丧失热情的瞬间 #
401279次浏览 2589人参与
# 要毕业了,再不说就来不及了 #
9290次浏览 154人参与
# 哪些公司校招卡第一学历 #
262469次浏览 879人参与
# 硬件人的简历怎么写 #
349638次浏览 3141人参与
# 国庆假期,给大脑放个假 #
26940次浏览 121人参与
# 你在职场上见过哪些“水货”同事 #
42004次浏览 179人参与
# 机械人的秋招小目标 #
32956次浏览 251人参与
# 面试被问第一学历差时该怎么回答 #
297200次浏览 2306人参与
# 你觉得机械有必要实习吗 #
89083次浏览 537人参与
# AI面会问哪些问题? #
136858次浏览 3688人参与
# 提名点击就挂的公司 #
146708次浏览 494人参与
# 听到哪句话就代表面试稳了or挂了? #
271358次浏览 1733人参与
