求助P1281QaQ
  • 板块题目总版
  • 楼主Targanzqq
  • 当前回复2
  • 已保存回复2
  • 发布时间2022/11/27 22:31
  • 上次更新2023/10/27 01:08:53
查看原帖
求助P1281QaQ
555617
Targanzqq楼主2022/11/27 22:31
#include<bits/stdc++.h>
using namespace std;
int main()
{
    int n,k,a[505],b[505],f[505][505],c[505],d[505];
    cin>>n>>k;
    for(int i=1;i<=n;i++){
    	cin>>a[i];
    	b[i]=b[i-1]+a[i];
    	f[1][i]=b[i];
	}
	c[1]=1;d[k]=n;
	for(int i=2;i<=k;i++){
		f[i][1]=f[i-1][1];
		for(int j=2;j<=n;j++){
			f[i][j]=f[i-1][j];
			for(int l=1;l<j;l++){
				if(max(f[i-1][l],b[j]-b[l])<f[i][j]){
					d[i-1]=l;c[i]=l+1;
				}
				f[i][j]=min(f[i][j],max(f[i-1][l],b[j]-b[l]));
			}
		}
	}
	for(int i=1;i<=k;i++){
		cout<<c[i]<<" "<<d[i]<<endl;
	}
}

各位dalao请接受小蒟蒻的膜拜QwQ

2022/11/27 22:31
加载中...