Pagini recente » Cod sursa (job #2760294) | Cod sursa (job #1476749) | Cod sursa (job #2246153) | Cod sursa (job #2972155) | Cod sursa (job #2859005)
#include <iostream>
using namespace std;
ifstream fin("transport.in");
ofstream fout("transport.in");
int v[16001],n,k,st,c;
bool verif()
{
int s=0,t=0;
for(int i=0; i<n; i++)
{
s+=v[i];
if(s>c)
{
s=0;
t++;
i--;
}
}
t++;
return (t<=k);
}
int main()
{
int dr=0;
fin>>n>>k;
for(int i=0; i<n; i++)
{
fin>>v[i];
dr+=v[i];
if(st<v[i])
st=v[i];
}
c=st;
int mij;
while(st<=dr)
{
mij=(st+dr)/2;
c=mij;
if(verif()==0)
{
st=mij+1;
}
else dr=mij-1;
}
fout<<st;
return 0;
}