555求调
  • 板块题目总版
  • 楼主longyitongxue
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/12/24 21:28
  • 上次更新2024/12/25 14:17:15
查看原帖
555求调
1145420
longyitongxue楼主2024/12/24 21:28

题目:https://www.luogu.com.cn/problem/P1182
满江红:https://www.luogu.com.cn/record/195958394 Code:

#include<iostream>
#include<stdio.h>
#define LL long long
#define TF bool
using namespace std;
LL n,m,a[100005];
TF check(LL x){
	LL y=0,cnt=0;
	for(int i=1;i<=n;i++){
		if(y+a[i]<=x){
			y+=a[i];
		}else{
			y=a[i];
			cnt++;
		}
	}
	return cnt>=m;
}
LL lower(){
	LL l=0,r=1E8+1;
	while(l+1<r){
		LL mid=l+r>>1;
		if(check(mid))l=mid;
		else r=mid;
	}
	return l;
}
int main(){
	cin>>n>>m;
	for(int i=1;i<=n;i++){
		scanf("%lld",&a[i]);
	}
	cout<<lower();
	return 0;
}
2024/12/24 21:28
加载中...