#HK4234. 「NordicOI 2024」Thin Ice

「NordicOI 2024」Thin Ice

题目描述

题目译自 NordicOI 2024 T3 「Thin Ice

Uolevi 站在一个 n×mn \times m 网格形状的冰冻湖上,每个方格上都有一个硬币。

每个方格都有一个耐久度,即方格上能承受的硬币数量。

在一步中,Uolevi 可以向上、向下、向左或向右移动一个方格,但不能超出湖的边界。如果 Uolevi 当前所在的方格上有硬币,他可以捡起来。

当 Uolevi 移动到一个方格时,方格上的硬币数量永远不能超过方格的耐久度。这包括 Uolevi 携带的硬币,以及如果还没有被捡起来的冰上的硬币。Uolevi 自己的重量可以忽略不计。

Uolevi 想进行一次起点和终点都是边缘方格的旅行。他旅行期间能收集到的最大硬币数量是多少?

输入格式

输入的第一行包含整数 nnmm,分别表示湖的高度和宽度。

接下来的 nn 行,每行有 mm 个整数,分别表示每个方格上冰的耐久度 dd

输出格式

输出 Uolevi 可以收集到的最大硬币数量。

3 4
1 1 1 1
1 3 6 1
3 4 5 1
5

Uolevi 可以从左上角开始,按照以下方式移动:

向下 \rightarrow 捡硬币 \rightarrow 向右 \rightarrow 捡硬币 \rightarrow 向下 \rightarrow 向左 \rightarrow 捡硬币 \rightarrow 向右 \rightarrow 捡硬币 \rightarrow 向右 \rightarrow 捡硬币

请注意,Uolevi 不能收集六个硬币,因为这样做他将无法回到边缘方格。

数据范围与提示

详细子任务附加限制及分值如下表所示。

子任务 分值 附加限制
11 1717 1nm16,1d161 \le nm \le 16, 1 \le d \le 16
22 1212 1nm2105,1d51 \le nm \le 2 \cdot 10^5, 1 \le d \le 5
33 1111 n=1,1m100,1d100n = 1, 1 \le m \le 100, 1 \le d \le 100
44 1919 $n = 1, 1 \le m \le 2 \cdot 10^5, 1 \le d \le 2 \cdot 10^5$
55 1414 1nm1000,1d10001 \le nm \le 1000, 1 \le d \le 1000
66 2727 $1 \le nm \le 2 \cdot 10^5, 1 \le d \le 2 \cdot 10^5$