Run ID | 作者 | 问题 | 语言 | 测评结果 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|
36167 | YOYOLEE-李昕颖 | 月度开销 | C++ | 通过 | 0 MS | 252 KB | 519 | 2024-01-09 20:57:48 |
#include<iostream> using namespace std; int n,m,a[10005]; int judge(int x){ int money=0,month=0,d,i; for(i=1;i<=n;i++){ money+=a[i]; if(money>=x){ month++; if(a[i]<x) money=a[i]; else return 1; } } return month>=m; } int main() { int l,r,mid; int tot=0; cin>>n>>m; for(int i=1;i<=n;i++){ cin>>a[i]; tot+=a[i]; } l=1; r=tot; while(l+1<r){ mid=(l+r)/2; if(judge(mid)){ l=mid; } else r=mid; } if(judge(l)) cout<<l; else cout<<r; return 0; }