WA10pts,样例41output42,求调
查看原帖
WA10pts,样例41output42,求调
787031
UKE_Piu楼主2024/12/17 13:32
#include<bits/stdc++.h>
using namespace std;
int n,m;
const int N=1e3+3,inf=1145140000;
int a[N][N],f[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];
	  	f[i][j]=-inf;
	  }
/*	f[n/2][1]=a[n/2][1];
	f[n/2-1][1]=a[n/2-1][1];
	f[n/2+1][1]=a[n/2+1][1];
*/	for(int j=1;j<=m;j++)
	  for(int i=max(n/2-j,1);i<=min(n/2+j,n);i++){
	  	f[i][j]=max(f[i][j],f[i][j-1]+a[i][j]);
	  	if(i>max(n/2-j+1,1)) f[i][j]=max(f[i][j],f[i-1][j-1]+a[i][j]);
	  	if(i<min(n/2+j-1,n)) f[i][j]=max(f[i][j],f[i+1][j-1]+a[i][j]);
	  }
	int ans=-inf;
	for(int i=1;i<=n;i++) ans=max(ans,f[i][m]);
	cout<<ans;
	return 0;
}


/*
6 7

0  16  4   3   12  6   0   3
0  4  -5   6   7   0   0   2
0  6   0  -1  -2   3   6   8
0  5   3   4   0   0  -2   7
0 -1   7   4   0   7  -5   6
0  0  -1   3   4   12  4   2




*/
2024/12/17 13:32
加载中...