记得没写过这题,但是 AC 了,看了眼记录发现不是这个题的代码。
https://www.luogu.com.cn/record/159336228
#include<cstdio>
#include<iostream>
#include<algorithm>
#define m n
using namespace std;
int n,s[405][405],a[405][405],f[405],ans = -2e9, b[405];
int main(){
cin>>n;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
cin>>a[i][j];
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
s[j][i] = s[j][i-1] + a[i][j];
for(int i=1;i<=n;i++){
for(int j=i;j<=n;j++){
for(int k=1;k<=m;k++){
b[k] = s[k][j] - s[k][i-1];
f[k] = -2e9;
}
for(int k=1;k<=m;k++){
f[k] = max(b[k],f[k-1]+b[k]);
ans = max(ans,f[k]);
}
}
}
cout << ans << endl;
return 0;
}