/ Vijos / 题库 /

青铜莲花池[1]

青铜莲花池[1]

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


【题目描述】

  FJ 建造了一个美丽的池塘,用于让他的牛们审美和锻炼。这个长方形的池子被分割成了 \(M\) 行和 \(N\) 列)正方形格子的。某些格子上有莲花,还有一些格子是岩石,其余的只是水。

  贝茜正在练习芭蕾舞,她从一个莲花跳跃到另一个莲花,当前位于一个莲花。她希望在莲花上一个一个的跳,目标是另一个给定莲花。她既不能跳入水,也不到一个岩石上。贝茜的每次的跳跃像国际象棋中的骑士一样:横向移动 \(M_1\),然后纵向移动量\(M_2(M_1≠M_2)\),或纵向移动量 \(M_1\),然后横向移动 \(M_2\)。贝茜有时可能会有多达 8 个方向选择的跳跃。

  给定池塘的布局和贝茜的跳跃格式,请确定贝茜从从她的出发位置,到最终目的地,最小的跳跃次数,贝茜在给出测试数据一定可以跳到目的地。

【输入格式】

  第 \(1\) 行包含四个用空格隔开的整数: \(M, N, M_1, M_2\)。
  第 \(2..M+1\) 行: 第 \(i+1\) 行有 \(N\) 个整数,表示该位置的状态: 0 为水、1 为莲花、2 为岩石、3 为贝茜开始的位置、 4 为贝茜要去的目标位置。

【输出格式】

  一个整数,从起始点到要去的位置,贝茜最小的跳跃次数。

【输入输出样例】

 Input

4 5 1 2
1 0 1 0 1
3 0 2 0 4
0 1 2 0 0
0 0 0 1 0

 Output

2

【数据限制】

  对于 \(100\%\) 的数据,\(1≤M,N≤30\)。

【来源】

  Mr.he

信息

ID
1907
难度
9
分类
搜索 | 图结构 | 最短路 点击显示
标签
递交数
5
已通过
1
通过率
20%
被复制
9
上传者