救命!!!自己电脑编译器答案是正确的,但是到测试数据的时候全是错的
查看原帖
救命!!!自己电脑编译器答案是正确的,但是到测试数据的时候全是错的
283795
204697971wxin楼主2021/7/27 17:57

自己电脑编译器答案是正确的,但是到测试数据的时候全是错的 这是为啥??

include<stdio.h>
typedef long long ll;
ll max(ll x,ll y){

	if(x>y)
	return x;
	else
	return y;
}

int main(){

	ll a[15][15];
	ll n;
	ll x,y,z;
	ll dp[15][15][15][15]; 
	scanf("%lld",&n);
	while(1){
		scanf("%lld %lld %lld",&x,&y,&z);
			if(x==0&&y==0&&z==0){
				break;
			}
			else{
				a[x][y]=z;
		}
	}
	for(ll i=1;i<=n;i++){
		for(ll j=1;j<=n;j++){
			for(ll k=1;k<=n;k++){
				for(ll l=1;l<=n;l++){
					dp[i][j][k][l]=max(max(dp[i-1][j][k-1][l],dp[i][j-1][k][l-1]),max(dp[i-1][j][k][l-1],dp[i][j-1][k-1][l]))+a[i][j]+a[k][l];
					if(i==k&&j==l){
						dp[i][j][k][l]-=a[i][j];
					}	
				}
			}
		} 
	}
	printf("%lld",dp[n][n][n][n]);
	return 0;
} 
2021/7/27 17:57
加载中...