自认为写法正确,但只得了5分,各位能帮忙看一下吗
查看原帖
自认为写法正确,但只得了5分,各位能帮忙看一下吗
648772
Liyuqiao11楼主2023/1/11 10:37
#include<bits/stdc++.h>
using namespace std;
const int N = 1010;
int n,m,a[N][N],dp[N][N];
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=2;i<=n;i++){
		dp[i][0]=-1e9;
	}
	for(int i=2;i<=m;i++){
		dp[0][i]=-1e9;
	}
	for(int i=1;i<=m;i++){
		for(int j=1;j<=n;j++){
			dp[j][i]=max(dp[j-1][i]+a[j][i],dp[j][i-1]+a[j][i]);
			if(j!=n){
				dp[j][i]=max(dp[j][i],dp[j+1][i-1]+a[j+1][i]);
			}
		}
	}
	cout<<dp[n][m];
	return 0;
} 
2023/1/11 10:37
加载中...