先部分分,再进阶
先认清任务,再讨论算法
2020 CSP-J 第二轮 T4|方格取数
题目信息
- 题目名称:方格取数
- 源程序名:
number.cpp - 输入文件:
number.in - 输出文件:
number.out - 时间限制:1 秒
- 内存限制:256 MB
完整题干
设有 的方格图,每个方格中都有一个整数。现有一只小熊,想从图的左上角走到右下角,每一步只能向上、向下或向右走一格,并且不能重复经过已经走过的方格,也不能走出边界。
小熊会取走所有经过方格中的整数,求它能取到的整数之和的最大值。
输入格式
第一行有两个整数 。
接下来 行每行 个整数,依次代表每个方格中的整数。
输出格式
输出一个整数,表示小熊能取到的整数之和的最大值。
样例 1
输入:
3 4
1 -1 3 2
2 -1 4 -1
-2 2 -3 -1
输出:
9
一条最优路线是:
路径和为 。
样例 2
输入:
2 5
-1 -1 -3 -2 -7
-2 -1 -4 -1 -2
输出:
-10
例如路线 的和为 。这个样例提醒我们:答案可能是负数,不能把不可达状态初始化为 0。
数据范围
- 对于 的数据,;
- 对于 的数据,;
- 对于 的数据,;
- 对于 的数据,;
- 每个方格中整数的绝对值不超过 。
按测试点取并集,不把重叠分数相加
勾选已掌握的路线,观察它们共同覆盖哪些测试点。这里计算的是该卷条件下的理论覆盖分,不代表程序已经通过正式评测,也不对应任何一等奖分数线。
已掌握的解法
去重后覆盖0 / 100
实际提交时,须将已掌握的分支整合到同一份程序。勾选路线不会自动拼接代码。
测试点覆盖图
已覆盖未覆盖
查看原题评分依据
逐条看懂:性质、推导与完整代码
选择一条路线,查看它为什么成立,再进入同一算法的可视化与代码追踪。
选择得分路线
算法过程执行语句与图示同步
当前变量金色表示与上一步相比发生变化
已输出
尚未输出
0 / 0
键盘 ← → 单步,空格播放 / 暂停
执行记录(最近 8 步)
用边界检查:我真的读懂了吗?
先手算,再展开解释。带入演示时会核对当前路线的适用条件。