1252:走迷宫 2021-01-05
1252:走迷宫
时间限制: 1000 ms 内存限制: 65536 KB
【题目描述】
一个迷宫由R行C列格子组成,有的格子里有障碍物,不能走;有的格子是空地,可以走。
给定一个迷宫,求从左上角走到右下角最少需要走多少步(数据保证一定能走到)。只能在水平方向或垂直方向走,不能斜着走。
【输入】
第一行是两个整数,R和C,代表迷宫的长和宽。( 1≤ R,C ≤ 40)
接下来是R行,每行C个字符,代表整个迷宫。
空地格子用‘.’表示,有障碍物的格子用‘#’表示。
迷宫左上角和右下角都是‘.’。
【输出】
输出从左上角走到右下角至少要经过多少步(即至少要经过多少个空地格子)。计算步数要包括起点和终点。
【输入样例】
5 5
..###
#....
#.#.#
#.#.#
#.#..
【输出样例】
9
#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
int dt[42][42],book[300][3];
int r,c;
int xx[4]={-1,1,0,0};
int yy[4]={0,0,-1,1};
void bfs(int a,int b){int x,y,t=0,w=1;dt[a][b]=1;book[1][1]=a;book[1][2]=b;book[1][3]=0;while(w>t){t++;for(int i=0;i<4;i++){x=book[t][1]+xx[i];y=book[t][2]+yy[i];if(x>0&&x<=r&&y>0&&y<=c&&dt[x][y]==0){w++;dt[x][y]=1;book[w][1]=x;book[w][2]=y;book[w][3]=book[t][3]+1;if(x==r&&y==c){printf("%d\n",book[w][3]+1);return;}}}}
}
int main(int argc, char *argv[])
{char ch;scanf("%d %d",&r,&c);for(int i=1;i<=r;i++)for(int j=1;j<=c;j++){cin>>ch;if(ch=='#')dt[i][j]=1;else dt[i][j]=0;}bfs(1,1);return 0;
}
1252:走迷宫 2021-01-05相关推荐
- 2021.01.05丨根据基因名称拼接表达量与相关注释
这一步是在进行最后的数据汇总工作中用到的,将基因的count与FPKM值和基因注释的结果组合在一起,得到一个完整的数据.方便客户进行后续研究.算法与之前那篇基因ID匹配注释文本一文相似,用了两个for ...
- 2021.01.05 ps临摹调色
欢迎观看阿贝贝啊的今日成果 今天终于来完结梦幻场景这张图了 近期临近期末,不小心鸽了哈哈哈哈 这是临摹站酷一位作者的图,他有出教程,以及资源包 因为个人技术问题,整体调色出来的色彩我并不满意 会努力练 ...
- 830. Positions of Large Groups(Leetcode每日一题-2021.01.05)
Problem In a string s of lowercase letters, these letters form consecutive groups of the same charac ...
- 信息学奥赛一本通(1252:走迷宫)
1252:走迷宫 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 12748 通过数: 5737 [题目描述] 一个迷宫由R行C列格子组成,有的格子里有障碍 ...
- 信息学奥赛一本通 1252:走迷宫 | OpenJudge NOI 2.5 2753:走迷宫
[题目链接] ybt 1252:走迷宫 OpenJudge NOI 2.5 2753:走迷宫 [题目考点] 1. 广搜 迷宫问题 [解题思路] 设结构体类型的结点保存位置以及步数,队列中保存的是该结构 ...
- c语言大作业走迷宫,C语言笔记07_小游戏设计——“走迷宫”
C语言07 小游戏设计--走迷宫 目标: 我们要设计一个完整的小游戏"走迷宫".你将可以通过控制键盘上的"W"."S"."A&qu ...
- 无脑单细胞竟会走迷宫、规划交通路线,这种难以归类的生物重定义了智能
本文转载自公众号SME 在电子游戏的一般套路设定下,蠢萌的史莱姆总是那个最低级的怪物. 它们几乎没有智商可言,攻击手段单一且总是以动技能著称,正所谓"烂泥扶不上壁". 而纵观各个类 ...
- python走迷宫_Python使用Tkinter实现机器人走迷宫
这本是课程的一个作业研究搜索算法,当时研究了一下Tkinter,然后写了个很简单的机器人走迷宫的界面,并且使用了各种搜索算法来进行搜索,如下图: 使用A*寻找最优路径: 由于时间关系,不分析了,我自己 ...
- 嬴群的Python程序设计基础学期总结 2021.01.04
Python程序设计基础学期总结 ## 时光像水中的倒影,一晃大一上学期就过去了.昨日那埋怨时间太慢的情愫似乎还游离在脑际,而今大一下学期生活正向我们走来,蓦然回首,感慨颇多.刚迈入大学的时候对一切似 ...
最新文章
- ios 边录音边放_关于Android和iOS系统OneNote支持边录音边记笔记的需求和建议
- Web服务器安全设置
- Servlet3.0下配置Servlet
- libtorch和torchvision的编译安装
- html设置自定义光标,pixi.js 自定义光标样式
- Hadoop下载、安装与遇到问题
- 计算机时间无法保存更改,怎样更改电脑右下角时间设置 不能修改怎么办
- oracle现金流量表逻辑,财务学习:现金流量表内在逻辑研究
- FLV格式的视频怎么在线转换成MP4格式
- 天宇优配|混动车将告别上海免费绿牌 新能源多种技术路
- 修改360抢票的刷新频率+突破8车次限制,太简单了
- Pandoc中使用Reveal-js制作幻灯片
- Python Spark RDD
- Linux系统编程之捕捉SIGCHLD
- python工匠技巧系列(给变量注明类型)
- greensock下载_GreenSock MorphSVGPlugin
- Android _《看完不忘系列》之Retrofit,android面试题及答案2019
- ngff m2无线网卡接口改装nvme ssd固态硬盘及测速
- 电子计算机房用电负荷标准,8.1 供配电_数据中心设计规范 GB50174-2017_消防规范网_119消防考试网...
- 设备管理系统软件都有哪些功能?