小慕正在开发一个商场智能导航系统。商场的地下停车场可以抽象为一个 r*c 的,其中: - 0表示该位置是空的行车道,车辆可以通行。 - 1表示该位置存有障碍物、立柱或其他已停放的车辆,车辆无法通行。 停车场的入口统一设在坐标 [0, 0] 处。现在有一辆车进入停车场,需要前往指定的目标车位 [m, n]。车辆在停车场内只能沿着上、下、左、右四个方向移动,每移动一个格子计为步数 1。请你帮小慕规划一条从入口到目标车位的最短路径。
提示:带虚线的词点一下有通俗解释。
输入描述
第一行输入两个整数 m 和 n,表示目标车位的行下标和列下标。 第二行输入两个整数 row 和 col,表示停车场的总行数和总列数。 接下来的 row 行,每行包含 col 个以空格分隔的整数(0 或 1),表示停车场的状态信息。 约束条件: - 1 < row, col < 200 - 0 < m < row, 0 < n < col - 入口 [0, 0] 保证为空位。
输出描述
输出一个整数,表示从入口 [0, 0] 到目标车位 [m, n] 的最短路径步数。如果由于障碍物阻挡无法到达目标位置,则输出-1。
示例
示例 1
输入
1 1 3 3 0 0 0 0 0 0 0 0 0
输出
2
时间限制 1000 ms · 内存限制 128 MB