比赛 2019级快乐小组模拟赛19.9.19 评测结果 AAAAAAAAAA
题目名称 月度花费 最终得分 100
用户昵称 瑆の時間~無盡輪迴·林蔭 运行时间 0.060 s
代码语言 C++ 内存使用 14.42 MiB
提交时间 2019-09-18 21:25:59
显示代码纯文本
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std; 
int n,m;
long long q[100020],l=0,r=0;
bool chack(int x){
	int ans=0;
	int cnt=0;
	for(int a=1;a<=n;++a){
		cnt+=q[a];
		if(cnt+q[a+1]>x){
			cnt=0;
			ans++;
		}
	}
	if(ans<m){
		return 1;
	}
	else{
		return 0;
	}
}
int main(){
	freopen("expense.in","r",stdin);
	freopen("expense.out","w",stdout);
	scanf("%d%d",&n,&m);
	for(int a=1;a<=n;++a){
		scanf("%d",&q[a]);
		l=max(l,q[a]);
		r+=q[a];	
	}
	while(l<=r){
		int mid=(l+r)/2;
		if(chack(mid)){
			r=mid-1;
		}
		else{
			l=mid+1;
		}
	}
	printf("%lld",l);
    return 0;
}