#6934. CSP-J 2020 方格取数(number)T4
CSP-J 2020 方格取数(number)T4
方格取数(number)
题目描述
设有一个 (n\times m) 的方格图,每个方格中都有一个整数。
现有一只小熊,想从图的左上角走到右下角。每一步只能向上、向下或向右走一格,并且不能重复经过已经走过的方格,也不能走出边界。
小熊会取走所有经过的方格中的整数,求它能取到的整数之和的最大值。
输入格式
输入文件名为 number.in。
第一行包含两个正整数 (n,m)。
接下来 (n) 行,每行包含 (m) 个整数,依次代表每个方格中的整数。
输出格式
输出文件名为 number.out。
输出一个整数,表示小熊能取到的整数之和的最大值。
样例 1
输入
3 4
1 -1 3 2
2 -1 4 -1
-2 2 -3 -1
输出
9
样例解释
小熊可以按照以下路径行走,其中 ((i,j)) 表示第 (i) 行、第 (j) 列的方格:
$$(1,1)\to(2,1)\to(2,2)\to(2,3)\to(1,3)\to(1,4)\to(2,4)\to(3,4)$$取到的整数之和为:
可以证明,这是最大值。
注意,以下两种走法不符合题意:
- 在第 2 行第 2 列向下走到第 3 行第 2 列,再向上返回,会重复经过第 2 行第 2 列的方格。
- 走到第 1 行第 4 列就结束,没有到达右下角的终点。
样例 2
输入
2 5
-1 -1 -3 -2 -7
-2 -1 -4 -1 -2
输出
-10
样例解释
小熊可以按照以下路径行走:
取到的整数之和为:
可以证明,这是最大值。
因此,请注意:取到的整数之和的最大值也可能是负数。
样例 3
见选手目录下的 number/number3.in 与 number/number3.ans。
数据范围与提示
| 数据比例 | 数据范围 |
|---|---|
| 对于 (20%) 的数据 | (n,m\le 5) |
| 对于 (40%) 的数据 | (n,m\le 50) |
| 对于 (70%) 的数据 | (n,m\le 300) |
| 对于 (100%) 的数据 | (1\le n,m\le 1000),方格中整数的绝对值不超过 (10^4) |
注:图片中输出格式的“输入文件名为 number.out”已纠正为“输出文件名为 number.out”。
相关
在以下作业中: