带权网格上的最短路

测试数据来自 system/1700

作业已超过截止时间,您无法递交本题目。

时间限制: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

网格上的DFS和BFS

未认领
状态
已结束
题目
10
开始时间
2024-05-11 00:00
截止时间
2024-08-03 23:59
可延期
24.0 小时