2 条题解

  • 0
    @ 2025-10-8 16:59:09
    #include <bits/stdc++.h>
    using namespace std;
    int s[510], f[510][510];
    void print(int n, int k, int ans)
    {
        if(k == 0) return ;
        if(n == 0) {printf("0 0\n");return ;}
        for(int i = n; i >= 0; i--)
        {
            if(s[n] - s[i - 1] > ans || i == 0)
            {
                print(i, k - 1, ans);
                printf("%d %d\n", i + 1, n);
                return ;
            }
        }
    }
    int main()
    {
        int n, k;scanf("%d%d", &n, &k);
        memset(f, 63, sizeof(f));
        for(int i = 0; i <= k; i++)f[0][i] = 0;
        s[0] = 0;for(int i = 1, x; i <= n; i++){ scanf("%d", &x);s[i] = s[i - 1] + x;f[i][1] = s[i];}
        for(int ki = 2; ki <= k; ki++)
            for(int i = ki; i <= n; i++)
            {
                for(int j = i - 1; j >= 0; j--)
                {
                    f[i][ki] = min(f[i][ki], max(f[j][ki - 1], s[i] - s[j]));
                }
            }
        print(n, k, f[n][k]);
        return 0;
    }
    
    • 0
      @ 2025-10-8 16:59:00
      #include<bits/stdc++.h>
      using namespace std;
      int s[510],f[510][510];
      void print(int n,int k,int ans)
      {
      	if(k==0) return ;
      	if(n==0) {printf("0 0\n");return ;}
      	for(int i=n;i>=0;i--)
      	{
      		if(s[n]-s[i-1]>ans|| i==0)
      		{
      			print(i,k-1,ans);
      			printf("%d %d\n",i+1,n);
      			return ;
      		}
      	}
      }
      int main()
      {
      	int n,k;scanf("%d%d",&n,&k);
      	memset(f,63,sizeof(f));
      	for(int i=0;i<=k;i++)f[0][i]=0;
      	s[0]=0;for(int i=1,x;i<=n;i++){ scanf("%d",&x);s[i]=s[i-1]+x;f[i][1]=s[i];}
      	for(int ki=2;ki<=k;ki++)
      		for(int i=ki;i<=n;i++)
      		{
      			for(int j=i-1;j>=0;j--)
      			{
      				f[i][ki]=min(f[i][ki],max(f[j][ki-1],s[i]-s[j]));
      			}
      		}
      	print(n,k,f[n][k]);
          return 0;
      }
      • 1

      信息

      ID
      1892
      时间
      1000ms
      内存
      128MiB
      难度
      5
      标签
      递交数
      26
      已通过
      14
      上传者