80 分求调
查看原帖
80 分求调
1304731
TuanTuan_Cat楼主2025/8/29 09:53

代码:

#include<bits/stdc++.h>
using namespace std;
int n,m,a[100007];
int find(){
    int l=1,r=INT_MAX;
    while(l<r){
        int mid=(l+r)>>1;
        int s=0,ans=1;
        for(int i=0;i<n;i++){
            s+=a[i];
            if(s>mid) s=a[i],ans++;
        }
        if(ans<=m) r=mid;
        else l=mid+1;
    }
    return l;
}
signed main(){
    cin>>n>>m;
    for(int i=0;i<n;i++) cin>>a[i];
    cout<<find();
    return 0;
}

评测记录:https://www.luogu.com.cn/record/233636191

2025/8/29 09:53
加载中...