首页 > 试题广场 >

小红的矩阵操作

[编程题]小红的矩阵操作
  • 热度指数:138 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
小红有一个大小为 n \times m 的矩阵,矩阵中每个元素都是非负整数。小红每次操作可以选择矩阵的一行或者一列,然后获得这一行或者这一列中所有元素的和,随后,这一行或者这一列中的元素将会被清零。
小红想知道,她最多进行三次操作,能获得的最大和是多少。

输入描述:
第一行两个整数 n, m,表示矩阵的大小。
接下来 n 行,每行 m 个整数 a_{ij},表示矩阵中的元素。
1 \leq n, m \leq 500
0 \leq a_{ij} \leq 10^9


输出描述:
输出一个整数,表示小红最多进行三次操作,能获得的最大和。

示例1

输入

2 3
1 2 5
3 4 6

输出

21

说明

进行两次操作,选择第一行和第二行,得到的和为 1+2+5+3+4+6=21
示例2

输入

4 4
5 6 7 2
8 9 10 2
1 20 0 0
0 2 1 0

输出

71

说明

选择第一行、第二行、第二列,得到的和为71。