第四个样例没过WA80
查看原帖
第四个样例没过WA80
1031883
pioneer2000楼主2024/5/26 13:43
#include<bits/stdc++.h>
using namespace std;
long long n,m,a[100005];
bool check(long long x){
	long long sum=0,ans=1;
	for(int i=1;i<=n;i++){
		if(sum+a[i]>x){
			ans++;
			sum=a[i];
		}else{
			sum+=a[i];
		}
	}
	if(ans<=m){
		return true;
	}else{
		return false;
	}
}
int main(){
	cin>>n>>m;
	for(int i=1;i<=n;i++){
		cin>>a[i];
	}
	long long l=0,r=1e9,ans;
	while(l<=r){
		long long mid=(l+r)>>1;
		if(check(mid)){
			ans=mid; 
			r=mid-1;
		}else{
			l=mid+1;
		}
	}
	cout<<ans;
	return 0;
}

求大佬帮助

2024/5/26 13:43
加载中...