有没有大大可以看出来有什么问题
#include<bits/stdc++.h>
#define ll long long
using namespace std;
const int MAXN=1005;
const int MINN=-1e9;
ll n,m;
ll f[MAXN][MAXN][2],h[MAXN][MAXN];
int main(){
cin>>n>>m;
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
cin>>h[i][j];
}
}
f[1][1][0]=h[1][1];
for(ll j=1;j<=m;j++){
for(ll i=1;i<=n;i++){
if(j==1 && i==1) continue;
f[i][j][0]=max(f[i][j-1][0],max(f[i][j-1][1],f[i-1][j][0]))+h[i][j];
}
for(ll i=n;i>=1;i--){
f[i][j][1]=max(f[i][j-1][0],max(f[i][j-1][1],f[i+1][j][1]))+h[i][j];
}
}
cout<<f[n][m][0]<<endl;
return 0;
}
感谢感谢
悬关!