Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
127563 刘星辰liuxingchen 花费 C++ 通过 100 0 MS 252 KB 704 2024-01-25 09:31:02

Tests(10/10):


#include<bits/stdc++.h> using namespace std; int n; int m; int a[100010]; long long l; long long r; long long sum; long long mid; int Max; bool check() { int num=0; int ans=0; for(int i=1;i<=n;i++) { num+=a[i]; if(num>mid) { ans++; num=a[i]; } else if(num==mid) { num=0; ans++; } } if(num!=0) { ans++; } return ans<=m; } int main() { cin>>n; cin>>m; for(int i=1;i<=n;i++) { cin>>a[i]; sum+=a[i]; Max=max(Max,a[i]); } if(m==n) { cout<<Max; return 0; } l=1; r=sum; while(l<r) { mid=(l+r)>>1; if(check()==1) { r=mid; } else { l=mid+1; } } cout<<l; return 0; }


测评信息: