#B3975. 最大的和

最大的和

题目描述

小 S 喜欢连在一起的数字,如果这些数字的和很大就更好了。

所以她现在要给你一个 nnnn 列的网格 AA,第 ii 行第 jj 列上填有一个整数 Ai,jA_{i,j}

接下来你可以在 AA 上任取一行一列一条与任意对角线平行只经过网格交叉点直线(注意,不是线段),满足经过至少一个数字,且经过的数字之和最大。

如果对上面的表述有疑惑,请参考样例解释辅助理解。

你需要告诉小 S 这个最大的数字之和。

输入格式

输入共 n+1n+1 行。

第一行,一个正整数 nn,表示方阵的行数、列数。

接下来 nn 行,每行 nn 个用空格隔开的整数,其中第 ii 行第 jj 个整数表示 Ai,jA_{i,j}

输出格式

输出一行一个整数,表示最大的数字之和。

样例 #1

样例输入 #1

3
1 1 1
2 2 2
3 3 3

样例输出 #1

9

样例 #2

样例输入 #2

3
-1 1 2
4 0 3
1 9 2

样例输出 #2

13

样例 #3

样例输入 #3

3
-1 -1 -1
-1 -1 -1
-1 -1 -1

样例输出 #3

-1

样例 #4

样例输入 #4

3
-100 -10 -100
-10 99999 -10
-100 -10 -100

样例输出 #4

99979

提示

样例解释

  • 样例 2:和最大的线经过 4499,和为 1313。因为直线只能经过网格交叉点,所以无法同时取到 4,1,94,1,9
  • 样例 3:只能取某条只经过一个 1-1 的直线,答案为 1-1,不允许一个数字都不选;
  • 样例 4:斜线都不优,取中间一行 9997999979

数据范围

对于 100%100\% 的数据,保证 1n2×1031\leq n\leq 2\times 10^3105Ai,j105-10^5\leq A_{i,j}\leq 10^5