参考题解的做法,但是
本地正常输出,但是在洛谷永远输出0(在IDE中也一样)
#include<bits/stdc++.h>
using namespace std;
int n,m;
int dp[55][55][55][55];
int a[55][55];
int main(){
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 <= n;i++){
for(int j = 1;j <= m;j++){
for(int k = 1;k <= n;k++){
for(int l = j + 1;l <= m;l++){
dp[i][j][k][l] = max(max(dp[i - 1][j][k - 1][l],dp[i - 1][j][k][l - 1]),max(dp[i][j - 1][k - 1][l],dp[i][j - 1][k][l - 1])) + a[i][j] + a[k][l];
}
}
}
}
cout<<dp[n][m][n][m];
return 0;
}
本地编译器:TDM-GCC 4.9.2 64-bit Debug
事故现场