不带权网格上的最短路
测试数据来自 system/1907
作业已超过截止时间,您无法递交本题目。
时间限制:1秒 内存限制:256M
【题目描述】
\(M\) 行 \(N\) 列的棋盘上,一些格子是空格子,另一些是障碍物。
青蛙在棋盘上每一步可以横向移动 \(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,M_1,M_2≤100\)。
【来源】
Mr.he