Pagini recente » Cod sursa (job #1094190) | Cod sursa (job #1080413) | Cod sursa (job #3130697) | Cod sursa (job #1080891) | Cod sursa (job #252598)
Cod sursa(job #252598)
#include<fstream.h>
ifstream f("trans.in");
ofstream g("trans.out");
int st,dr,i,v[16001],n,k,sol;
int gr(int x)
{
int i,j=1,s=0;
for(i=1;i<=n;i++)
{
if(s+v[i]<=x) s+=v[i];
else s=v[i],j++;
}
return j;
}
int main()
{ int aux,suma=0,max=0;
f>>n>>k;
for(i=1;i<=n;i++)
{
f>>v[i];
if(v[i]>max) max=v[i];
suma+=v[i];
}
st=max;
dr=suma;
while(st<=dr)
{
aux=st+(dr-st)/2;
if(gr(aux)<=k) sol=aux,dr=aux-1;
else st=aux+1;
}
g<<sol;
return 0;
}