Pagini recente » Cod sursa (job #2576575) | Cod sursa (job #1191218) | Cod sursa (job #2147456) | Cod sursa (job #2804299) | Cod sursa (job #1882369)
#include <bits/stdc++.h>
using namespace std;
int c,k,p,n,a[1000],s,m,lo,mid,hi;
int main(){
ifstream cin("transport.in");
ofstream cout("transport.out");
cin>>n>>m;
for (int i=1;i<=n;i++)
cin>>a[i];
lo=1;
hi=210000000;
while (lo<=hi){
mid=lo+(hi-lo)/2;
p=mid;
s=0;
k=1;
for (int i=1;i<=n;i++)
if (s+a[i]<=p) {
s=s+a[i];
}
else {
k++;
s=a[i];
}
if (k<=m) hi=mid-1;
else lo=mid+1;
}
cout<<lo;
return 0;
}