我是XJOIde业余爱好者(不是学军的学生),现在在3级。

这是二级十三段的题

题面

中文 切换语言(Change Language)

时间限制:2s   空间限制:256M

描述

给定一个迷宫。在迷宫中有一些障碍物无法通过,请计算出从左上角到右下角的移动方案总数。(一个位置不能经过两次,只能上下左右四个方向走)

输入格式

第一行包含两个整数n,m,表示迷宫的大小。1 <= N,M<= 6

接下来的n行,每行包含m个字符,代表迷宫。

#代表障碍

*代表你可以去的位置

左上角和右下角用“*”表示

输出格式

一个整数。

样本输入1

5 6
*****#
*###*#
*###*#
*###*#
******

样本输出1

2

样本输入2

6 6
******
******
******
******
******
******

示例输出2

1262816

提示

思路:

dfs,到底了method++,回溯,边界判断和访问和在一起了~还是挺简单的

代码:

def dfs(x,y):

    global a

    global method

    global n,m

    if x==n-1 and y==m-1:

        method+=1

        return

    if y<m-1 and a[x][y+1]=="*" and v[x][y+1]==0:

        v[x][y+1]=1

        dfs(x,y+1)

        v[x][y+1]=0          

    if x<n-1 and a[x+1][y]=="*" and v[x+1][y]==0:

        v[x+1][y]=1

        dfs(x+1,y)

        v[x+1][y]=0

    if y>0 and a[x][y-1]=="*" and v[x][y-1]==0:

        v[x][y-1]=1

        dfs(x,y-1)

        v[x][y-1]=0

    if x>0 and a[x-1][y]=="*" and v[x-1][y]==0:

        v[x-1][y]=1

        dfs(x-1,y)

        v[x-1][y]=0

    return

n,m=map(int,input().split())

a=[]

v=[[0 for i in range(m)] for i in range(n)]

method=0          

for i in range(n):

    a.append(list(input()))

v[0][0]=1

dfs(0,0)

print(method)

XJOI1226 走迷宫相关推荐

  1. 蓝桥杯国赛-大胖子走迷宫

    广度优先搜索,见注释 五个状态:上下左右停 题目提交 import java.util.ArrayDeque; import java.util.Queue; import java.util.Sca ...

  2. BZOJ 2707: [SDOI2012]走迷宫 [高斯消元 scc缩点]

    2707: [SDOI2012]走迷宫 题意:求s走到t期望步数,\(n \le 10^4\),保证\(|SCC| \le 100\) 求scc缩点,每个scc高斯消元,scc之间直接DP 注意每次清 ...

  3. 无脑单细胞竟会走迷宫、规划交通路线,这种难以归类的生物重定义了智能

    本文转载自公众号SME 在电子游戏的一般套路设定下,蠢萌的史莱姆总是那个最低级的怪物. 它们几乎没有智商可言,攻击手段单一且总是以动技能著称,正所谓"烂泥扶不上壁". 而纵观各个类 ...

  4. 迷宫python_Python走迷宫,递归 - nixBlog

    递归走迷宫,练手. 23下午就写好的,可是测试几种不同的迷宫后,发现有个Bug,我以为算法有问题,今早才发现,原来是isDest函数里r和c都写成r了,拷贝out函数的语句再改写造成的悲剧. #!/u ...

  5. SDUT-2449_数据结构实验之栈与队列十:走迷宫

    数据结构实验之栈与队列十:走迷宫 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 一个由n * m 个格子组成的迷宫,起 ...

  6. java课程设计总结迷宫_Java课程设计走迷宫详解.doc

    Java语言与面向对象技术 课程设计报告 ( 2014 -- 2015年度第 1 学期) 走迷宫 目 录 目 录2 1 概 述1 1.1 课程设计目的1 1.2 课程设计内容1 2 系统需求分析2 2 ...

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

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

  8. RL之SARSA:利用强化学习之SARSA实现走迷宫—训练智能体走到迷宫(复杂陷阱迷宫)的宝藏位置

    RL之SARSA:利用强化学习之SARSA实现走迷宫-训练智能体走到迷宫(复杂陷阱迷宫)的宝藏位置 目录 输出结果 设计思路 实现代码 测试记录全过程 输出结果 设计思路 实现代码 后期更新-- 测试 ...

  9. RL之Q Learning:利用强化学习之Q Learning实现走迷宫—训练智能体走到迷宫(复杂迷宫)的宝藏位置

    RL之Q Learning:利用强化学习之Q Learning实现走迷宫-训练智能体走到迷宫(复杂迷宫)的宝藏位置 目录 输出结果 设计思路 实现代码 测试记录全过程 输出结果 设计思路 实现代码 f ...

  10. RL之Q Learning:利用强化学习之Q Learning实现走迷宫—训练智能体走到迷宫(简单迷宫)的宝藏位置

    RL之Q Learning:利用强化学习之Q Learning实现走迷宫-训练智能体走到迷宫(简单迷宫)的宝藏位置 目录 输出结果 设计思路 实现代码 测试记录全过程 输出结果 设计思路 实现代码 f ...

最新文章

  1. BeeHive模块注册
  2. javaweb引用serverlet库
  3. PHP+Mysql查询上一篇和下一篇文章实例
  4. python发布服务,Python服务发现:在本地n上发布服务
  5. 用 #inculde file = ../fiel 报1031错误
  6. nginx mime.types php,使用重写和有效的mime类型配置NGINX的正确方法
  7. 微课|中学生可以这样学Python(5.6.2节):生成器推导式
  8. CSS实现限制字数功能
  9. PHP开发苍穹DDOS压力测试页端源码
  10. 基于WebUploader、SpringMVC的断点续传
  11. 苹果cms 压缩html,解密苹果cms的player.js文件
  12. Android扫描局域网内所有的ip地址
  13. ffmpeg mp4转mov
  14. 极坐标下积分计算图形面积
  15. 2022年了,如何制定今年的战略目标?人人必知
  16. Salesforce 解决chatter简档删除不掉记录类型问题
  17. 【React】React Js入门教程(一学就会)
  18. 前缀和——(1)什么是前缀和和一维前缀和
  19. 百度音乐api+c语言,百度音乐接口api - osc_d87glhzv的个人空间 - OSCHINA - 中文开源技术交流社区...
  20. 社交网络:有意义的不仅是邓巴数

热门文章

  1. C# GIF图片的分解以及合成
  2. 天然气阶梯是按年还是按月_天然气阶梯不是明年1月1号开始么?怎么现在充气就限量了...
  3. Dorado7 DataGrid变颜色 自定义渲染
  4. 由浅入深理解JVM垃圾回收机制
  5. JanusGraph图数据库系统简介
  6. 两个服务器同步网站数据,两个服务器之间数据库同步
  7. fgo最新服务器,《FGO》:现在世界上其他地区的服务器近况如何,一起来看看吧!...
  8. 深信服 AC上网 行为管理设置
  9. 直线插补算法---matlab仿真程序
  10. vmware VCPU的一点理解记录