当前位置: 首页 > news >正文

21-bfs-走迷宫(简单模板题)

题目

来源

844. 走迷宫 - AcWing题库

思路

BFS的模板题,用队列实现,可参考:AcWing 844. 走迷宫(数组模拟,C++STL, python、打印路径) - AcWing;其他详见代码。

代码

def bfs():
    d[0][0]=0
    queue=[(0,0)]
    dx=[-1,0,1,0]
    dy=[0,-1,0,1]
    while queue: #队列不能为空
        x,y=queue.pop(0)
        for i in range(4): #四个方向去搜索
            a=x+dx[i]
            b=y+dy[i]
            if a>=0 and a<n and b>=0 and b<m and d[a][b]==-1 and g[a][b]==0: #说明可以走通
                queue.append((a,b)) #入队列
                d[a][b]=d[x][y]+1 #更新距离
    print(d[n-1][m-1])

n,m=map(int,input().split())
g=[[-1 for j in range(m)] for i in range(n)] #地图
d=[[-1 for j in range(m)] for i in range(n)] #距离(每个位置到初始位置的距离)
for i in range(n):
    col=list(map(int,input().split()))
    for j in range(m):
        g[i][j]=col[j] #处理输入
bfs()
http://www.dtcms.com/a/101966.html

相关文章:

  • 3132_nodejs_express后端框架
  • Spring中@Value的使用详解,以及和@ConfigurationProperties使用对比
  • 开源项目解读(https://github.com/zjunlp/DeepKE)
  • 补Java基础之重生(14)API(下)
  • 鸿蒙应用权限深度解析:构建安全可信的分布式应用
  • 绿盟春招面试题
  • 输出3行3列矩阵的鞍点
  • 大商创多用户商城系统存在SQL注入漏洞
  • 【蓝桥杯—单片机】通信总线专项 | 真题整理、解析与拓展 (更新ing...)
  • 如何完全卸载宝塔面板?
  • 媒体直播的力量:解锁新时代传播密码,引爆传播效应,媒介盒子分享
  • dotnet core web api linux主机公网发布
  • 深入解析:ElasticSearch Query 查询方式
  • Redis的Java客户端
  • C++笔记-模板初阶,string(上)
  • Notepad++正则匹配案例
  • 记一个阿里云CDN域名配置不当引起服务鉴权失效问题
  • VMware安装Home Assistant避坑指南
  • 创建Spring Boot项目有哪几种方式
  • [从零开始学习JAVA ] 了解线程池
  • 【区块链安全 | 第十六篇】类型之值类型(三)
  • 20-dfs-N皇后问题(中等)
  • TCP三次握手,四次挥手,再次总结
  • ubuntu22安装tenserflow0.12.1
  • Java 数据库连接池
  • Mybatis_Plus中的条件构造器和常用接口,插件
  • 【算法手记8】NC95 数组中的最长连续子序列 字母收集
  • AI 只能聊天、生成图片、生成视频吗?
  • 封装了一个iOS多分区自适应宽度layout
  • SQL生成ER图/AI生成ER图,智能生成ER图/在线快速编写ER图