#include <iostream>
#include <cstring>
using namespace std;
int n,m,a[1005][1005];
long long f[1005][1005],sum[1005][1005];
int main()
{
memset(f,0xc0,sizeof(f));
cin>>n>>m;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
cin>>a[i][j];
for(int i=1;i<=m;i++)
for(int j=1;j<=n;j++)
sum[i][j]=sum[i][j-1]+a[j][i];
for(int i=1;i<=n;i++)
f[1][i]=sum[1][i];
for(int i=2;i<=m;i++)
{
for(int j=1;j<=n;j++)
{
for(int k=1;k<=j;k++)
f[i][j]=max(f[i][j],f[i-1][k]+sum[i][j]-sum[i][k-1]);
for(int k=j+1;k<=n;k++)
f[i][j]=max(f[i][j],f[i-1][k]+sum[i][k]-sum[i][j-1]);
//cout<<f[i][j]<<" ";
}
//cout<<endl;
}
cout<<f[m][n];
return 0;
}
记录