AT_iroha2019_day2_i 南極
题目描述
在南极海域的地图上,有一个大小为 $H \times W$ 的网格。网格中的某个位置可以用坐标 $(i, j)$ 表示,其中 $i$ 表示从上往下的行数,而 $j$ 表示从左往右的列数。
海域中分布着许多冰山。探险家いろはちゃん想从起始位置 $(s_x, s_y)$ 移动到目标位置 $(g_x, g_y)$,每次只能向上下左右相邻的格子移动。由于某些格子上存在冰山,いろはちゃん无法直接通过,因此可能需要花费代价来融化这些冰山。
冰山的融化需要一些成本。融化编号为 $k$ 的冰山的费用为 $C_k$ 日元。你的任务是计算出让いろはちゃん从起点到达终点所需的最低成本。
在网格中,存在 $X$ 个不同的冰山。每个位置 $(i, j)$ 的状态用 $A_{i,j}$ 表示:
- $A_{i,j} = 0$ 表示该位置无冰山;
- $1 \leq A_{i,j} \leq X$ 表示此处有编号为 $A_{i,j}$ 的冰山。相同编号的冰山是相连的,也就是说它们之间是连续的。
输入格式
从标准输入中读取以下内容:
> $ H $ $ W $ $ X $ $ s_x $ $ s_y $ $ g_x $ $ g_y $
> $ A_{1,1} $ $ A_{1,2} \cdots A_{1,W} $
> $ A_{2,1} $ $ A_{2,2} \cdots A_{2,W} $
> $ \vdots $
> $ A_{H,1} $ $ A_{H,2} \cdots A_{H,W} $
> $ C_1 $ $ C_2 \cdots C_X $
输出格式
输出从起点到终点所需的最小融化成本。
说明/提示
- 所有输入均为整数。
- $1 \leq H, W \leq 500$
- $1 \leq s_x, g_x \leq H$
- $1 \leq s_y, g_y \leq W$
- $(s_x, s_y)$ 和 $(g_x, g_y)$ 均不是冰山所在位置。
- $1 \leq X \leq HW - 2$
- $0 \leq A_{i,j} \leq X$
- 所有的编号从 $1$ 到 $X$ 的冰山编号 $A_{i,j}$ 均会出现。
- $1 \leq C_i \leq 10^{10}$
### 部分得分信息
- 对于满足 $H, W \leq 40, X \leq 9$ 的所有测试用例,分数为 160 分。
- 对于满足 $H, W \leq 40$ 的所有测试用例,额外奖励 400 分。
- 对于所有测试用例,额外奖励 240 分。
### 参考资料
[解题说明](https://img.atcoder.jp/iroha2019-day2/editorial-I.pdf)
**本翻译由 AI 自动生成**