1185: 走迷宫
Time Limit: 1 Sec Memory Limit: 128 MB
Submit: 383 Solved: 155
[Submit][Status][Web Board]
Description

给一张个迷宫,问能否从起点走到终点,只能往上下左右走,不能斜着走

Input

多组测试数据,每组第一行两个正整数,分别为n和m

表示n这个迷宫有n行m列(0<n,m<10)

接着是n行m列,

'#'表示路

‘*’表示墙

‘S’表示起点

‘T’表示终点

Output

每组测试数据输出一个结果,如果能从S走到T,输出“YES”,否则输出“NO”

Sample Input

2 2
S*
#T
3 3
S*#
#T
##

Sample Output

YES
NO

HINT

Source

AC_code:

 #include <stdio.h>#include <string.h>char a[15][15];int step_x[]= {-1,1,0,0},step_y[]= {0,0,-1,1};//上下左右四个方向int n,m,f[15][15],flag;void DFS(int x,int y){f[x][y] = 1;//辅助数组,标记一个起点使用过if(a[x][y]=='T'){flag = 1;return;}for(int i = 0; i < 4; i++)//上下左右找路{int xx =x + step_x[i];int yy =y + step_y[i];if(a[xx][yy]!='*'&&!f[xx][yy]&&xx>=0&&xx<n&&yy>=0&&yy<m){DFS(xx,yy);//新起点找路}}}int main(){while(~scanf("%d%d",&n,&m)){memset(f,0,sizeof(f));int start_x,start_y;flag = 0;for(int i = 0; i < n; i++){scanf("%s",a[i]);for(int j = 0; j < m; j++){if(a[i][j]=='S'){start_x = i,start_y = j;}}}DFS(start_x,start_y);if(flag)printf("YES\n");elseprintf("NO\n");}return 0;}

DFS(入门题,走迷宫)相关推荐

  1. 5978 Problem F 【递归入门】走迷宫

    问题 F: [递归入门]走迷宫 时间限制: 1 Sec 内存限制: 128 MB 提交: 128 解决: 46 题目描述 有一个n*m格的迷宫(表示有n行.m列),其中有可走的也有不可走的,如果用1表 ...

  2. DFS和BFS概念及实践+acwing 842 排列数字(dfs) +acwing 844. 走迷宫(bfs)

    DFS (深搜), 也有说就是递归的 执着: 一直搜到底,然后回溯下一个节点 数据结构 : stack (这里的栈,实际上是编译器内部的栈, 所以说也可以看成递归, 递归内部也是调用编译器内部栈) 空 ...

  3. D题 走迷宫

    走迷宫 时间限制:1000 ms  |  内存限制:65535 KB 难度:5 描述 Dr.Kong设计的机器人卡多非常爱玩,它常常偷偷跑出实验室,在某个游乐场玩之不疲.这天卡多又跑出来了,在SJTL ...

  4. 2017年蓝桥杯c++A组第一题走迷宫

    走迷宫 题目描述: X星球的一处迷宫游乐场建在某个小山坡上.它是由10x10相互连通的小房间组成的. 房间的地板上写着一个很大的字母.我们假设玩家是面朝上坡的方向站立,则: L表示走到左边的房间,R表 ...

  5. 编程题走迷宫_洛谷P1238 走迷宫题解

    题目描述 有一个m*n格的迷宫(表示有m行.n列),其中有可走的也有不可走的,如果用1表示可以走,0表示不可以走,文件读入这m*n个数据和起始点.结束点(起始点和结束点都是用两个数据来描述的,分别表示 ...

  6. 编程题走迷宫_C++程序算法题----迷宫(一)

    题目: 一天蒜头君掉进了一个迷宫里面,蒜头君想逃出去,可怜的蒜头君连迷宫是否有能逃出去的路都不知道.看在蒜头君这么可怜的份上,就请聪明的你告诉蒜头君是否有可以逃出去的路. 输入格式 第一行输入两个整数 ...

  7. 编程题走迷宫_编程题——机器人走迷宫 (用C语言)

    /*迷宫由 N W S E 组成 踩到N向上走一格 踩到W 向左走一格 踩到S向下走一格 踩到E 向右走一格 输入迷宫行数 列数 不大于10 机器人初始列数(注意 这个列数是从1开始数的) 判断能否走 ...

  8. dfs和bfs走迷宫

    数据 10 10 //格子行 列 #S######.# ......#..#.#.##.##.# .#........ ##.##.####....#....# .#######.#....#.... ...

  9. 编程题走迷宫_迷宫--小学生编程竞赛题目(两种解法,一种简单的推荐)

    迷宫是长方形的,有 n 行 m 列个格子.一共有 3 类格子,空地用字符'.' 表示,墙壁用'#'表示,陷阱用'*'表示. 特别地,迷宫中有两个特殊的格子:起点用'S'表示;终点用'E'表示. 起点和 ...

  10. 问题 F: 【递归入门】走迷宫

    题目链接 解决思路 岔路:上下左右 死胡同:到达终点 为了不走回头路或没有重复点,对经过的点 上锁-DFS-解锁 代码 #include<stdio.h> #include<iost ...

最新文章

  1. 2021新年伊始,25岁“天才少年”曹原再发一篇Nature!9个月的第三篇Nature!
  2. android分钟倒计时,Android 三十分钟倒计时
  3. 联想将推出全新系列笔记本
  4. php 接口升级,PHP 开发 APP 接口 学习笔记与总结 - APP 接口实例 [6] 版本升级接口开发...
  5. 深度linux系统反复重启,修复启动
  6. Apache与Tomcat集群配置
  7. SQLServer2016安装教程
  8. fh 幅频特性曲线怎么画fl_开环幅相频率特性曲线和对数相频特性曲线的完整画法...
  9. 在线问诊第一平台微医引入智齿 构建智慧客服体系
  10. 袋鼠!沃尔沃的无人车就是搞不定这种动物
  11. Excel转PDF如何解决显示不全的问题?
  12. JS + 递归实现细胞分裂
  13. 【最新排名(按点赞)】投票倒计时三天:继续为你喜欢的征文作品投票吧!...
  14. 01【股票初级】-【找准入场时机】投资五大流派,好公司投资法,判断单只股票是否便宜?如何找准时机入场?
  15. linux命令学习一 :touch和mkdir 创建文件和文件夹
  16. GPS卫星坐标用计算机计算,GPS卫星位置的计算
  17. JS识别二维码、JS生成二维码
  18. 大学生须知:毕业当程序员想要提升“核心竞争力”,主要看这六点!
  19. 解决 ES6 Module 报 Access to script at ‘xx‘ from origin ‘null‘ has been blocked by CORS policy
  20. 英特尔在建造《银翼杀手》中的世界

热门文章

  1. ppp chap 加密摘要_“网络工程师培训”基础教程:一文读懂PPP协议
  2. css表格文字超数量就竖排_求助!!一个非常棘手的问题。就是文字竖排显示的问题...
  3. 机器学习(一)线性回归
  4. 粉丝给我发色情app,我反手对色情app渗透,我居然发现了 ....
  5. python 科学计算设计_用Python做科学计算 高清晰PDF
  6. lm723大电流可调电源电路图_TE:大电流电源连接器
  7. linux目录表及功能n鸟哥,鸟哥linux私房菜_笔记_Linux的文件权限与目录配置
  8. django ajax文件上传,django 之 ajax 篇 上传文件
  9. Python调用ansible API系列(一)获取资产信息
  10. 数组中有一个数字出现的次数超过数组长度的一半