1 条题解

  • 0
    @ 2025-9-10 9:15:12

    C :

    #include<stdio.h>
    #include<math.h>
    #include<string.h>
    int a[201],f[201][201],sum[201][201];
    int n;
    int main()
    {
        int i,j;
        scanf("%d",&n);
        for (i=1;i<=n;i++)
        {
            scanf("%d",&a[i]);
            sum[i][i]=a[i]; 
    		f[i][i]=a[i];
        }
         for (i=n-1;i>=1;i--)
            for (j=i+1;j<=n;j++)
            {
                sum[i][j]=sum[i][j-1]+a[j];
                f[i][j]=sum[i+1][j]+a[i]-f[i+1][j]>sum[i][j-1]+a[j]-f[i][j-1]?sum[i+1][j]+a[i]-f[i+1][j]:sum[i][j-1]+a[j]-f[i][j-1];
    	    }     
        printf("%d %d\n",f[1][n],sum[1][n]-f[1][n]);
        return 0;
    }
    

    C++ :

    #include <iostream>
    #include <cstdio>
    #include <cstdlib>
    #include <cstring>
    using namespace std;
    int n;
    int a[105], s[105]={0};
    int f[105][105];
    int main()
    {
    	scanf("%d", &n);
    	for (int i = 1; i <= n; ++ i)	
    	{
    		scanf("%d", &a[i]);
    	       	s[i] = s[i-1] + a[i];  
    		f[i][i] = a[i];
    	}
    	for (int k = 1; k != n ; ++ k)
    		for (int i = 1; i + k <= n; ++ i)
    		{
    			int j = i + k;	
    			f[i][j] = max(s[j] - s[i] - f[i + 1][j] + a[i], s[j - 1] - s[i - 1] - f[i][j - 1] + a[j]);
    		}
    	printf("%d %d\n", f[1][n], s[n] - f[1][n]);
    	return 0;
    }
     
    

    Pascal :

    var f:array[1..100,1..100]of longint;
     sum:array[0..100]of longint;
     i,j,k,n:longint;
    function min(a,b:longint):longint;
     begin
        if a>b then exit(b) else exit (a);
     end;
    begin
     readln(n);
     fillchar(f,sizeof(f),0); sum[0]:=0;
     for i:=1 to n do
       begin
         read(f[i,i]);
         sum[i]:=sum[i-1]+f[i,i];
       end;
     for j:=1 to n-1 do
     for i:=1 to n-j do
     f[i,i+j]:=sum[i+j]-sum[i-1]-min(f[i,i+j-1],f[i+1,i+j]);
     writeln(f[1,n],' ',sum[n]-sum[0]-f[1,n]);
    end.
    
    • 1

    信息

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