题目背景
迷宫 【问题描述】

给定一个N*M方格的迷宫,迷宫里有T处障碍,障碍处不可通过。给定起点坐标和

终点坐标,问: 每个方格最多经过1次,有多少种从起点坐标到终点坐标的方案。在迷宫

中移动有上下左右四种方式,每次只能移动一个方格。数据保证起点上没有障碍。

输入样例 输出样例

【数据规模】

1≤N,M≤5

题目描述
输入输出格式
输入格式:
【输入】

第一行N、M和T,N为行,M为列,T为障碍总数。第二行起点坐标SX,SY,终点

坐标FX,FY。接下来T行,每行为障碍点的坐标。

输出格式:
【输出】

给定起点坐标和终点坐标,问每个方格最多经过1次,从起点坐标到终点坐标的方

案总数。
输入输出样例
输入样例#1:
2 2 1
1 1 2 2
1 2
输出样例#1:
1
/*
最基本的DFS,有需要注意的问题:**按我下面DFS的写法,在DFS前,起点标记一定要vis[sx][sy] = true;**由于很多数据不是很强的oj,忽略了也能AC,所以很多人容易忽略!刚才我就忽略了,之前也遇到这种问题,但是没有写总结,刚才还是犯了错。。。所以总结一下好!!
如果按我之前一篇DFS的写法就不易忽略这个问题:传送门
*/
AC_code:

#include <iostream>
using namespace std;int n,m,t,ans;int sx,sy,ex,ey;int a[8][8];bool vis[8][8];int step_x[]={-1,1,0,0},step_y[]={0,0,-1,1};void DFS(int sx,int sy){if(sx==ex&&sy==ey){ans++;return;}for(int i = 0; i < 4; i++){int xx = sx + step_x[i];int yy = sy + step_y[i];if(xx>0&&xx<=n&&yy>0&&yy<=m&&!a[xx][yy]&&!vis[xx][yy]){vis[xx][yy] = true;DFS(xx,yy);vis[xx][yy] = false;}}}int main(){cin>>n>>m>>t;cin>>sx>>sy>>ex>>ey;int x,y;for(int i = 0; i < t; i++){cin>>x>>y;a[x][y] = 1;}vis[sx][sy] = true;//这个点易忽略!!DFS(sx,sy);cout<<ans<<endl;return 0;}

p1605迷宫(DFS应该注意的问题)相关推荐

  1. P1605 迷宫 dfs回溯法

    题目背景 迷宫 [问题描述] 给定一个N*M方格的迷宫,迷宫里有T处障碍,障碍处不可通过.给定起点坐标和 终点坐标,问: 每个方格最多经过1次,有多少种从起点坐标到终点坐标的方案.在迷宫 中移动有上下 ...

  2. dfs 洛谷 P1605 迷宫

    洛谷 P1605 迷宫 题目: 链接 https://www.luogu.com.cn/problem/P1605 思路:从出发点点出发dfs搜索每一次可以到达终点的路径,边界条件为不能走障碍物(在输 ...

  3. 洛谷—— P1605 迷宫

    P1605 迷宫 题目背景 迷宫 [问题描述] 给定一个N*M方格的迷宫,迷宫里有T处障碍,障碍处不可通过.给定起点坐标和 终点坐标,问: 每个方格最多经过1次,有多少种从起点坐标到终点坐标的方案.在 ...

  4. 【洛谷P1605 迷宫】

    P1605 迷宫 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 这是一道很简单的迷宫搜索题,适合搜索初学者练习. 思路 用mp数组表示迷宫地图 用vis数组表示"打标记& ...

  5. 洛谷 | P1605 迷宫(DFS) C++

    题目背景 给定一个N*M方格的迷宫,迷宫里有T处障碍,障碍处不可通过.给定起点坐标和终点坐标,问: 每个方格最多经过1次,有多少种从起点坐标到终点坐标的方案.在迷宫中移动有上下左右四种方式,每次只能移 ...

  6. 洛谷P1605 迷宫(dfs) 题解

    题目来源: 点击打开链接 题目描述: 题目背景 迷宫 [问题描述] 给定一个N*M方格的迷宫,迷宫里有T处障碍,障碍处不可通过.给定起点坐标和 终点坐标,问: 每个方格最多经过1次,有多少种从起点坐标 ...

  7. 洛谷 P1605 迷宫(DFS模板)

    题目 https://www.luogu.com.cn/problem/P1605 思路 写一个DFS模板 #include<iostream> #include<algorithm ...

  8. K - 老鼠走迷宫(DFS)

    Description 现在一只老鼠被困在了迷宫里!你需要判断老鼠能否走出迷宫. 老鼠只能向上下左右四个方向移动.我们认为只要老鼠走到了迷宫的边界即算走出迷宫. Input 第一行输入两个整数 n, ...

  9. 洛谷——P1605 迷宫

    题目背景 迷宫 [问题描述] 给定一个N*M方格的迷宫,迷宫里有T处障碍,障碍处不可通过.给定起点坐标和 终点坐标,问: 每个方格最多经过1次,有多少种从起点坐标到终点坐标的方案.在迷宫 中移动有上下 ...

最新文章

  1. 对sigma pix 的理解
  2. Vware Workstation pro 12|虚拟机
  3. 【博弈】取石子游戏(P2599)
  4. linux发展前景2018,2018 年 Linux 的 8 个发展预测
  5. DBASK问答集萃第二期
  6. Vue3+Vant+Vue-cli+Restful api实战—图书商城移动端
  7. SNF快速开发平台MVC-各种级联绑定方式,演示样例程序(包含表单和表格控件)...
  8. 京东面试官:SQL 语句中 left join 后用 on 还是 where,区别大了!
  9. 技术管理者工作成效评估表
  10. 量化指标公式源码_量化指标公式源码,通达信量化买盘潮指标
  11. 苹果手机速度慢_安卓日语App,苹果也看进来
  12. 华为举办首届用户精英论坛,携手共创数据存储新未来
  13. webchart 生成饼状图 java_WebChart生成折线图,柱状图,饼状图
  14. 埃拉托斯特尼(Eratosthene)筛法
  15. 内网DNS报错:** server can‘t find ns1.aaa.com: SERVFAIL
  16. DecimalFormat 中0和#的作用
  17. Python基础五十四题19~36题
  18. robomongo_备忘
  19. 创维linux系统怎么上网,创维电视怎么看网络电视 该如何连接网络【图文】
  20. 海康摄像机在Edge浏览器的网页无法直接预览,按照要求安装WebComponents后仍然提示请安装插件的解决办法

热门文章

  1. php发请求的方法,php发送http请求的几种方法
  2. urlencode python_python爬虫之url中的中文问题
  3. uniapp 单元测试_单元测试不够验收测试凑,编写验收测试有什么技巧?
  4. python dict下标_python数据类型性能问题
  5. Hive DDL操作
  6. 终于,一键打通微信和QQ
  7. Pandas中文官档 ~ 基础用法1
  8. Python 制作微信全家福,你就是朋友圈最亮的仔!
  9. 读博熬不住了,拿个硕士学位投身业界如何?看过来人怎么说
  10. docker停止容器后配置_整理了一份 Docker系统知识,从安装到熟练操作看这篇就够了 | 原力计划...