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

HJ148 迷宫寻路

  • 题目
  • 题解(43)
  • 讨论(10)
  • 排行

简单 通过率:44.72% 时间限制:1秒 空间限制:256M

知识点dfs

校招时部分企业笔试将禁止编程题跳出页面,为提前适应,练习时请使用在线自测,而非本地IDE。

描述

旺仔哥哥被困在一个 n×mn×m 的矩形迷宫里。每个格子要么是空地 (用符号 `.` 表示),要么是墙 (用符号 `#` 表示)。旺仔哥哥只能从一个空地移动到其上下左右相邻的空地。
已知旺仔哥哥的起点为左上角 (1,1)(1,1),终点为右下角 (n,m)(n,m)。请判断他是否能够到达终点。

输入描述:

第一行输入两个正整数 n,m (1≦n,m≦100)n,m (1≦n,m≦100)。
接下来的 nn 行每行输入一个长为 mm 的仅包含字符 `.` 与 `#` 的字符串,描述整个迷宫。
保证起点 (1,1)(1,1) 和终点 (n,m)(n,m) 均为空地。

输出描述:

若旺仔哥哥可以走到终点,则输出单词 YesYes;否则输出 NoNo。

示例1

输入:

3 5 .##.# .#... ...#.

复制输出:

Yes

复制说明:

路线如下:(1,1)→(2,1)→(3,1)→(3,2)→(3,3)→(2,3)→(2,4)→(2,5)→(3,5)(1,1)→(2,1)→(3,1)→(3,2)→(3,3)→(2,3)→(2,4)→(2,5)→(3,5)
#include<bits/stdc++.h> using namespace std; const int N = 110; int n,m; char mp[N][N]; int dx[4]={-1,1,0,0},//四个方向 dy[4]={0,0,-1,1}; bool visited[N][N];//每个可遍历点的状态 void dfs(int x,int y)//深搜算法 { visited[x][y] = true;//将每次遍历到的点标记为true for(int i=0;i<4;i++) { int nx = x + dx[i], ny = y + dy[i]; //循环中四个方向会逐一排查 if(nx>=0 && nx<n && ny>=0 && ny<m && !visited[nx][ny] && mp[nx][ny] == '.') //满足边界条件(不能超出图的范围)并且该点没被遍历过,并且为'.' { dfs(nx,ny); //递归继续往后遍历 } } } int main() { cin>>n>>m; for(int i=0;i<n;i++)//将题目所给图输入 { for(int j=0;j<m;j++) { cin>>mp[i][j]; } } dfs(0,0);//调用dfs开始遍历,旺仔哥哥出发点为(0,0) //遍历完成后得到结果 //判断右下点是否为true,代码是0-based 注意要-1 if(visited[n-1][m-1]) cout<<"Yes"; else cout<<"No"; }
http://www.jsqmd.com/news/542828/

相关文章:

  • LFM2.5-1.2B-Thinking应用实战:用Ollama搭建一个能“思考”的智能问答助手
  • s2-pro效果展示:多说话人语音合成(同一模型切换不同音色)
  • AI绘画工作流优化:OpenClaw+GLM-4.7-Flash自动生成SD提示词与批处理
  • 爱毕业aibye盘点6大AI论文平台:智能改写+高效降重,科研写作更省力!
  • CoPaw高性能推理优化:利用GPU算力实现低延迟响应
  • 别再手动搬砖了!用C#给SolidWorks PDM写个自动化插件(Visual Studio 2022实战)
  • OBS直播远程控制与自动化技术指南
  • nli-distilroberta-baseAI应用:多模态内容审核中图文描述逻辑一致性判别
  • CMake+vcpkg环境配置避坑指南:从命令行到GUI的完整流程
  • SPIRAN ART SUMMONER跨平台适配:Windows/macOS/Linux下Streamlit祭坛兼容性
  • PostgreSQL 12密码策略深度优化:如何避免弱密码和过期风险?
  • Cartool实战:手把手教你完成静息态EEG微状态分析的组水平聚类与模板匹配
  • HunyuanVideo-Foley应用场景:播客自动化剪辑、TTS语音情感增强音效
  • Z-Image-Turbo-辉夜巫女企业应用:ACG内容团队低成本AI绘图工具落地案例
  • 【紧急预警】Python多解释器隔离漏洞CVE-2024-XXXX已触发沙箱逃逸!立即执行这7项检查并升级至3.12.3+
  • 终极指南:如何用qmcdump一键解锁QQ音乐加密音频
  • ArcMap地图数字化实战:从加载地形图到保存成果的完整流程(附常见问题解决)
  • C++调试实战:深度解析“断点无效,符号未加载”的根源与修复
  • 知识管理避坑指南:为什么你的Flomo收藏夹越存越乱?
  • 5种高效方法突破内容访问限制
  • 解锁数字音乐枷锁:qmcdump实战指南带你实现音频格式自由转换
  • 仿真模型中硅胶减震器的特征频率与谐振频率的受力分析
  • 雪女-斗罗大陆-造相Z-Turbo效果展示:惊艳的动漫角色生成案例
  • Google Play重签名后微信登录失效?手把手教你统一签名配置(附Facebook密钥转换技巧)
  • python单例模式、大模型一次加载多次复用
  • Alice-Tools:游戏资源处理的全能解决方案
  • OpenClaw自动化边界:GLM-4.7-Flash在GUI操作中的10大限制与应对
  • Wan2.2-I2V-A14B镜像优势:预编译CUDA算子,避免JIT编译导致的首次延迟
  • SmolVLA开源可部署价值:对比传统强化学习机器人训练周期大幅压缩
  • 2026年评测:高压锅炉管领域口碑钢管批发商有哪些,钢管厂商建盛钢管市场认可度高 - 品牌推荐师