/ Vijos / 题库 /

侦察小分队

侦察小分队

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


【题目描述】

  侦察小分队要从一个 \(m×n\) 的网格的左上角\((1,1)\)走到右下角\((m,n)\)去执行任务。网格中的一些格子是空地,用 0 表示,还有一些格子是障碍,用数字 1..9 表示,其余的就是不可通过的格子,用'*'表示。

  侦察小分队每个单位时间可以往上、下、左、右四个方向走一格,当然不能走到'*'的格子中。当遇到障碍格子时,可以先手动清除障碍,需要的时间就是该格子中的数字,在用一个单位时间进入该格子;也可以先用一个炸弹来清除该障碍物,需要用一个单位的时间,然后在用一个单位时间进入该格子。只有障碍物清除后,小分队才能进入该格子。

  现在告诉你网格地图以及小分队开始携带的炸弹数量,请算出他们到达目的地的最快时间。

【输入格式】

  第一行为 \(m,n,k\),表示网格的行列数以及携带的炸弹数量。
  接下来的 \(M\) 行,每行含 \(N\) 个字符,仅包含数字0..9和'*'。数字 0 表示空地,1..9 表示手动清除该格子的障碍所需时间,'*' 表示不可通行。输入保证\((1,1)\)和\((m,n)\) 都是空地。

【输出格式】

  输出一行,表示最快时间。如果不能到达目的地,则输出单词:IMPOSSIBLE。

【输入输出样例】

 Input

7 6 3
00507*
2***02
1100*0
01**09
21*00*
*0**10
*23400

 Output

19

【数据限制】

  对于 \(100\%\) 的数据,\(1≤m,n,k≤100\)。

【来源】

  Mr.he

信息

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