1 条题解

  • 0
    @ 2025-2-14 21:20:42

    C :

    #include<stdio.h>
    int m,n,a[11][11];
    int x,y,z;
    int f[11][11][11][11];
    int my_max(int,int,int,int);
    int main()
    {
    //	freopen("fgqs.in","r",stdin);
    //	freopen("fgqs.out","w",stdout);
    	scanf("%d",&n);
    	    while(1)
    		{
    			scanf("%d%d%d",&x,&y,&z);
    			if(x==0&&y==0&&z==0) break;
    			a[x][y]=z;
    		}
    		for(int i1=1;i1<=n;i1++)
    			for(int j1=1;j1<=n;j1++)
    				for(int i2=1;i2<=n;i2++)
    					for(int j2=1;j2<=n;j2++)
    					{
    						f[i1][j1][i2][j2]=my_max(f[i1-1][j1][i2][j2-1],
    											  f[i1-1][j1][i2-1][j2],
    											  f[i1][j1-1][i2-1][j2],
    											  f[i1][j1-1][i2][j2-1]);
    						f[i1][j1][i2][j2]+=a[i1][j1];
    						if(i1!=i2||j1!=j2)  f[i1][j1][i2][j2]+=a[i2][j2];
    					}
    		printf("%d",f[n][n][n][n]);
    }
    int my_max(int a,int b,int c,int d)
    {
    	int tot=0;
    	if(tot<a) tot=a;
    	if(tot<b) tot=b;
    	if(tot<c) tot=c;
    	if(tot<d) tot=d;
    	return tot;
    }
    

    C++ :

    #include <cstdio>
    
    using namespace std;
     
    int f[11][11][11][11];
    int c[11][11];
    int n;
    int main()
    {
    	int n ;
    	scanf("%d",&n) ;
    	int a , b , t ;
    	for (int i = 1 ; true ; i ++ )
    	{
    		scanf("%d%d%d",&a,&b,&t);
    		if (!a && !b && !t) break;
    		else c[a][b]=t;
    	}
    	for (int i = 1 ; i <= n ; i ++ )
    		for (int j = 1 ; j <= n ; j ++ )
    			for (int k = 1 ; k <= n ; k ++ )
    				for (int p = 1 ; p <= n ; p ++ )
    				{
    					f[i][j][k][p] = f[i-1][j][k-1][p];
    					if (f[i-1][j][k][p-1] > f[i][j][k][p])f[i][j][k][p] = f[i-1][j][k][p-1];
    					if (f[i][j-1][k-1][p] > f[i][j][k][p])f[i][j][k][p] = f[i][j-1][k-1][p];
    					if (f[i][j-1][k][p-1] > f[i][j][k][p])f[i][j][k][p] = f[i][j-1][k][p-1];
    					f[i][j][k][p] += c[i][j];
    					if(i != k || j != p) f[i][j][k][p] += c[k][p];
    				}
    	printf("%d\n",f[n][n][n][n]);
    	return 0;
    }
    
    • 1

    信息

    ID
    837
    时间
    1000ms
    内存
    128MiB
    难度
    (无)
    标签
    递交数
    0
    已通过
    0
    上传者