A2539 | 取数游戏
时间限制1s
内存限制128MB
通过 / 提交0/0
题目描述
一个 $N\times M$ 的由非负整数构成的数字矩阵,你需要在其中取出若干个数字,使得取出的任意两个数字不相邻(若一个数字在另外一个数字相邻 $8$ 个格子中的一个即认为这两个数字相邻),求取出数字和最大是多少。
输入格式
第一行有一个正整数 $T$,表示了有 $T$ 组数据。
对于每一组数据,第一行有两个正整数 $N$ 和 $M$,表示了数字矩阵为 $N$ 行 $M$ 列。
接下来 $N$ 行,每行 $M$ 个非负整数,描述了这个数字矩阵。
对于每一组数据,第一行有两个正整数 $N$ 和 $M$,表示了数字矩阵为 $N$ 行 $M$ 列。
接下来 $N$ 行,每行 $M$ 个非负整数,描述了这个数字矩阵。
输出格式
共 $T$ 行,每行一个非负整数,输出所求得的答案。
输入输出样例
输入 #1
3 4 4 67 75 63 10 29 29 92 14 21 68 71 56 8 67 91 25 2 3 87 70 85 10 3 17 3 3 1 1 1 1 99 1 1 1 1
输出 #1
271 172 99
样例解释
对于第一组数据,取数方式如下:
$$\begin{matrix} [67] & 75 & 63 & 10 \\ 29 & 29 & [92] & 14 \\ [21] & 68 & 71 & 56 \\ 8 & 67 & [91] & 25 \\ \end{matrix}$$
数据范围及约定
- 对于$20\%$的数据,$1\le N, M \le 3$;
- 对于$40\%$的数据,$1\le N, M\le 4$;
- 对于$60\%$的数据,$1\le N, M\le 5$;
- 对于$100\%$的数据,$1\le N, M\le 6$,$1\le T\le 20$。
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?