为什么和【方格取数】差不多的代码却只有80分?
求dalao们康康
#include<bits/stdc++.h>
using namespace std;
int mp[55][55];
int k[55][55][55][55];
int main(){
int n,m;
cin>>n>>m;
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
cin>>mp[i][j];
}
}
for(int a=1;a<=n;a++){
for(int b=1;b<=n;b++){
for(int c=1;c<=n;c++){
for(int d=1;d<=n;d++){
k[a][b][c][d]=max(max(k[a-1][b][c-1][d],k[a-1][b][c][d-1]),max(k[a][b-1][c-1][d],k[a][b-1][c][d-1]))+mp[a][b]+mp[c][d];
if(a==c&&b==d) k[a][b][c][d]-=mp[a][b];
}
}
}
}
cout<<k[n][m][n][m];
return 0;
}