Pagini recente » Cod sursa (job #2623204) | Cod sursa (job #2062561) | Cod sursa (job #104688) | Cod sursa (job #595661) | Cod sursa (job #732554)
Cod sursa(job #732554)
#include<cstdio>
using namespace std;
int a,c,d,v[16009],k,m,n,l,i=1,p=0,j=0,x=1,me=0,s=0,y=16000;
int lol(int me){
int b=0,i=1;
while(v[i]!=0){
while(s<me && v[i]!=0){
s=v[i]+s;
i++;
}
if(s>me){i--;
s-=v[i];
}
b++;s=0;
}
return b;}
int main(){
freopen("transport.in","r",stdin);
freopen("transport.out","w",stdout);
scanf("%d %d",&n,&k);
for(l=1;l<=n;l++)
scanf("%d",&v[l]);
while(x<=y){
me=(x+y)/2;
j=lol(me);
if(j<=k)
p=me;
if(j>k)
x=me+1;
else
y=me-1;
j=0;i=1;
}
printf("%d",p);
return 0;
}