Pagini recente » Cod sursa (job #720532) | Cod sursa (job #1813317) | Cod sursa (job #1929567) | Cod sursa (job #340150) | Cod sursa (job #1775547)
#include <cstdio>
int v[16000],n,k,max;
inline int zile(int x)
{
int i,co,s;
s=0,co=1;
for(i=0;i<n;i++)
{
s+=v[i];
if(s>x)
co++,s=v[i];
}
return co;
}
int cbin()
{
int i,j,mij,t;
i=maxx;j=256000000;
while(i<=j)
{
mij=(i+j)/2;
if(zile(mij)>k)
i=mij+1;
else
{
t=mij;
j=mij-1;
}
}
return t;
}
int main()
{
freopen("transport.in","r", stdin);
freopen("transport.out","w", stdout);
int i;
fscanf(fin,"%d%d",&n,&k);
for(i=0;i<n;i++)
{
fscanf(fin,"%d",&v[i]);
if(v[i]>maxx)
maxx=v[i];
}
printf("%d",cbin());
}
return 0;