Pagini recente » Cod sursa (job #2940644) | Cod sursa (job #875760) | Cod sursa (job #91493) | Cod sursa (job #1622734) | Cod sursa (job #1183947)
#include <cstdio>
#include <cstdlib>
#include <ctime>
#include <cmath>
#include <cstring>
#include <algorithm>
using namespace std;
int n, i, x, p, u, mij, s, y, l, v[16005];
int fct(int x)
{
int i, a, s, z;
a=0;
s=0;
z=0;
for(i=1;i<=n;i++)
{
s+=v[i];
if(s>x)
{
a++;
s=v[i];
}
}
return a+1;
}
int main()
{
freopen("transport.in", "r", stdin);
freopen("transport.out", "w", stdout);
scanf("%d%d", &n, &l);
for(i=1;i<=n;i++)
{
scanf("%d", &v[i]);
s+=v[i];
}
p=1;u=s;
while(p<=u)
{
mij=p+(u-p)/2;
x=fct(mij);
if(x<=l)
{
y=mij;
u=mij-1;
}
else p=mij+1;
}
printf("%d", y);
return 0;
}