描述
当你站在一个迷宫里的时候,往往会被错综复杂的道路弄得失去方向感,如果你能得到迷宫地图,事情就会变得非常简单。
假设你已经得到了一个n*m的迷宫的图纸,请你找出从起点到出口的最短路。

输入
第一行是两个整数n和m(1<=n,m<=100),表示迷宫的行数和列数。
接下来n行,每行一个长为m的字符串,表示整个迷宫的布局。字符’.’表示空地,’#’表示墙,’S’表示起点,’T’表示出口。
输出
输出从起点到出口最少需要走的步数。

-

依旧是隔壁的走迷宫板子
记个起点终点就行

#include<cstdio>
#include<cstring>
#include<queue>
using namespace std;int r,c;
int X[4]={0,1,0,-1},Y[4]={1,0,-1,0};
bool a[200][200];int main()
{queue<int> x,y,b,f;int n,m;b.push(0);f.push(4);scanf("%d%d",&r,&c);memset(a,0,sizeof(a));for(int i=1;i<=r;++i){char C;scanf("%c",&C);//去掉前面的空格 for(int j=1;j<=c;++j){scanf("%c",&C);if(C=='#') a[i][j]=1;elseif(C=='S') {x.push(i);y.push(j);}elseif(C=='T') {n=i;m=j;}}}//printf("%d %d\n%d %d\n",x.front(),y.front(),n,m);do{for(int i=0;i<4;++i)if(f.front()!=(i+2)%4){int xx=x.front()+X[i],yy=y.front()+Y[i];if(!a[xx][yy]&&xx>=1&&xx<=r&&yy>=1&&yy<=c){b.push(b.front()+1);x.push(xx);y.push(yy);a[xx][yy]=1;f.push(i);if(xx==n&&yy==m){printf("%d",b.back());return 0;}}}x.pop();y.pop();b.pop();f.pop();}while(!x.empty());return 0;
}

【NOI】6264 走出迷宫相关推荐

  1. 【NOI】6264:走出迷宫/ 2.5基本算法之搜索

    6264:走出迷宫 查看 提交 统计 提问 总时间限制: 1000ms 内存限制: 65536kB 描述 当你站在一个迷宫里的时候,往往会被错综复杂的道路弄得失去方向感,如果你能得到迷宫地图,事情就会 ...

  2. 信息学奥赛一本通 1254:走出迷宫 | OpenJudge NOI 2.5 6264:走出迷宫

    [题目链接] ybt 1254:走出迷宫 OpenJudge NOI 2.5 6264:走出迷宫 [题目考点] 1. 广搜 迷宫问题 [解题思路] 广搜,迷宫问题模板题. 当数据量很小时,用深搜的方法 ...

  3. NOI题库2.5 6264 走出迷宫

    描述 当你站在一个迷宫里的时候,往往会被错综复杂的道路弄得失去方向感,如果你能得到迷宫地图,事情就会变得非常简单. 假设你已经得到了一个n*m的迷宫的图纸,请你找出从起点到出口的最短路. 输入 第一行 ...

  4. 6264:走出迷宫(DFS和BFS)

    描述 当你站在一个迷宫里的时候,往往会被错综复杂的道路弄得失去方向感,如果你能得到迷宫地图,事情就会变得非常简单. 假设你已经得到了一个n*m的迷宫的图纸,请你找出从起点到出口的最短路. 输入 第一行 ...

  5. 6264:走出迷宫——BFS

    描述 当你站在一个迷宫里的时候,往往会被错综复杂的道路弄得失去方向感,如果你能得到迷宫地图,事情就会变得非常简单. 假设你已经得到了一个n*m的迷宫的图纸,请你找出从起点到出口的最短路. 输入 第一行 ...

  6. 6264:走出迷宫 (BFS,板子题)

    描述 当你站在一个迷宫里的时候,往往会被错综复杂的道路弄得失去方向感,如果你能得到迷宫地图,事情就会变得非常简单. 假设你已经得到了一个n*m的迷宫的图纸,请你找出从起点到出口的最短路. 输入 第一行 ...

  7. POJ 6264:走出迷宫

    " Ctrl AC!一起 AC!" 题目:忘题戳这 分析:一道典型的寻路广搜模板题,见博主的往日分析 AC代码: #include<iostream> #include ...

  8. 搜索4--noi6264:走出迷宫

    搜索4--noi6264:走出迷宫 一.心得 可以去看看别人的代码,吸收精华 二.题目 6264:走出迷宫 查看 提交 统计 提问 总时间限制:  1000ms 内存限制:  65536kB 描述 当 ...

  9. 信息学奥赛一本通(1254:走出迷宫)

    1254:走出迷宫 时间限制: 1000 ms         内存限制: 65536 KB 提交数: 9105     通过数: 4245 [题目描述] 当你站在一个迷宫里的时候,往往会被错综复杂的 ...

最新文章

  1. 移动端取消button点击出现阴影效果
  2. quick sort
  3. 安全数据分析理念的变化
  4. 巧用TensorFlow实现图像处理
  5. c语言入门 在线,c语言入门课件1.docx
  6. JAVA微信扫码支付模式二功能实现完整例子
  7. 跨部门不配合工作_同事不配合工作,划水甚至推诿,该怎么体现你的手腕
  8. BT下载原理学习简介
  9. E4/EAS/Eventing System 事件系统
  10. 固定日历 jeDate 日期控件 选择时间,没有相应的回调事件
  11. 软件测试 测试用例笔记
  12. 区块链Baas应用服务平台开发搭建
  13. 用计算机弹奏的成都,抖音成都怎么用计算器弹奏_抖音成都计算器乐谱_管理资源吧...
  14. Linux:获取线程的PID(TID、LWP)的几种方式
  15. android重新启动_如何重新启动Android智能手机或平板电脑
  16. 牛客网拼多多校招最大乘积
  17. Typro的基础使用以及画图
  18. 护眼灯到底有用吗?2022市面上这几款护眼灯真的能护眼
  19. 判断N维矩阵是否是Monge矩阵的Java实现
  20. php采集喜马拉雅,喜马拉雅数据 JSSDK API 接入 demo WEB版 标准登录 、免登陆

热门文章

  1. [Design]平面设计教程-《大师之路》
  2. 简单易操作的将m3u8转成mp4
  3. TCP长连接下,在应用层面,定制自己的负载均衡
  4. EasyGBS定制项目添加“设备标签”模块的代码实现分享
  5. PandoraBox client模式——承继其他Wi-Fi热点共享给有线
  6. 1024程序员节|JavaScript代码之美—代码优化,减少if-else冗余的技巧
  7. 京东商业提升事业部广告质量部招聘2023届算法实习生
  8. python项目源码 日程管理_[Python] Python日程处理
  9. CSS基础知识(一) CSS入门
  10. 2023全国特种作业操作证电力电缆模拟考试试卷一[安考星]