/ Vijos / 题库 /

带权网格上的最短路

带权网格上的最短路

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


【题目描述】

  在 \(m\) 行 \(n\) 列的网格上。有些格子是石墩,另一些则是障碍。

  一只青蛙准备从左上角跳到右下角的石墩上,每次跳跃可以跳到上下左右相邻的石墩上,但不能跳到障碍物上。

  从一个石墩跳到一个石墩上所须时间是由它们的高度决定的,假设从高度为 \(a\) 的石墩跳到高度为 \(b\) 的石墩上,则需要的时间是 \(|a-b|+1\)。

  现在请你计算,青蛙跳到右下角的石墩最少需要多少时间。

【输入格式】

  第一行:\(m,n\),为网格的大小。
  接下来的 \(m\) 行,每行包含 \(n\) 个整数,第 \(i\) 行第 \(j\) 列的整数为0时,则表示该格子为障碍格子, 大于0则表示石墩的高度。

【输出格式】

  一个整数,表示最短时间。若不能走到,则输出INF。

【输入输出样例】

 Input

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

 Output

10

【数据限制】

  \(100\%\) 的数据满足,\(1≤m,n≤100\),\(1≤石墩高度≤1000\)。

【来源】

  Mr.he

信息

ID
1700
难度
9
分类
图结构 | 最短路数据结构 | 队列 点击显示
标签
(无)
递交数
2
已通过
1
通过率
50%
被复制
5
上传者