第2个测试点,50*50的数据,自己调试的时候,复制粘贴,只能输进去30行,再就输不进去了,换一次行就可以继续输了。然后答案还是错的。
#include<bits/stdc++.h>
using namespace std;
int n,m,ma[55][55],f[110][55][55];
int main(){
cin>>m>>n;
for(int i=1;i<=m;i++) for(int j=1;j<=n;o++) cin>>ma[i][j];
for(int i=2;i<=m+n;i++)
for(int o=1;o<=m;o++)
for(int p=1;p<=m;p++){
int y_1=i-o,y2=i-p;
int t=ma[o][y_1]+ma[p][y2];
if(o==p) continue;
f[i][o][p]=max(f[i][o][p],f[i-1][o-1][p-1]+t);
f[i][o][p]=max(f[i][o][p],f[i-1][o][p-1]+t);
f[i][o][p]=max(f[i][o][p],f[i-1][o-1][p]+t);
f[i][o][p]=max(f[i][o][p],f[i-1][o][p]+t);
}
cout<<max(f[n+m][m-1][m],f[n+m][m][m-1]);
return 0;
}
某蒟蒻已......