/ Vijos / 题库 /

简单迷宫问题[2]

简单迷宫问题[2]

时间限制:1秒  内存限制:256M


【问题描述】

  一个网络迷宫有 \(m\) 行 \(n\) 列的单元格组成,每个单元格要么是空地(用1表示),要么是障碍物(用0表示)。在迷宫中行走时,每一步只能上下左右移动到相邻的格子中,且任何时候都不能在障碍格中,也不能走道迷宫之外。起点和终点保证是空地。

  现在给出迷宫,请你编程找到起点到终点最少的移动步数。

【输入格式】

  第 1 行包含两个整数 \(m\) 和 \(n\),表示迷宫是 \(m\) 行 \(n\) 列。
  接下来的 \(m\) 行每行包含长度为 \(n\) 的01串,其中第 \(i+1\) 行的第 \(j\) 个字符是’0’,表示迷宫的第 \(i\) 行第 \(j\) 列是障碍物,是’1’表示迷宫的第i行第j列是空地。
  最后一行包含四个整数:\(sx,sy,ex,ey\),\((sx,sy)\) 表示起点行号和列号,\((ex,ey)\) 表示终点的行号和列号。
  注意:迷宫的行号和列号编号都是从 1 开始的。

【输出格式】

  一个整数,表示最少的移动步数,如果从起点不能走到终点,则输出"None"。

【输入输出样例1】

 Input

5 6
111111
100011
011111
110101
110111
2 5 5 1

 Output

7

【输入输出样例2】

 Input

5 4
1100
1000
0110
1101
1111
1 1 5 4

 Output

None

【数据说明】

  对于所有数据保证 \(1<m,n≤25\)。

【来源】

  Mr.he

信息

ID
2439
难度
9
分类
搜索 点击显示
标签
(无)
递交数
3
已通过
1
通过率
33%
被复制
4
上传者