Pagini recente » Cod sursa (job #1477534) | Cod sursa (job #932217) | Cod sursa (job #3285205) | Cod sursa (job #2735689) | Cod sursa (job #80136)
Cod sursa(job #80136)
#include<stdio.h>
#define N 17000
int n,k,c,v[N],sum;
void read()
{
int i;
scanf("%d%d%d",&n,&k,&v[0]);
sum=v[0];
for(i=1;i<n;i++)
{
scanf("%d",&v[i]);
sum+=v[i];
}
}
int maxim(int v[N])
{
int i,max;
max=v[0];
for(i=1;i<n;i++)
if(v[i]>max)
max=v[i];
return max;
}
int intra(int c)
{
int i,s=0,nr=0;;
s=v[0];
for(i=1;i<n;i++)
{
if(s+v[i]>c)
{
nr++;
s=v[i];
}
else
s+=v[i];
}
if(s<=c)
{
nr++;
if(nr<=k)
return 1;
}
return 0;
}
void solve()
{
int i,max,imp;
max=maxim(v);
c=max;
imp=1;
for(i=max;i<=sum;i++)
if(intra(i))
{
c=i;
break;
}
printf("%d\n",c);
}
int main()
{
freopen("transport.in","r",stdin);
freopen("transport.out","w",stdout);
read();
solve();
return 0;
}