Pagini recente » Cod sursa (job #2264465) | Cod sursa (job #1737699) | Cod sursa (job #1487065) | Cod sursa (job #2512935) | Cod sursa (job #1646869)
#include <fstream>
#define Nmax 256005
using namespace std;
int n,k;
ifstream fin("transport.in");
ofstream fout("transport.out");
int v[16005];
int ver(int val)
{int s=0;
int kk=1;
for(int i=1;i<=n;i++)
{
if(s+v[i]>val)
{
s=v[i];
kk++;
}
else
s+=v[i];
}
return kk;
}
int rez()
{
int L=1,R=Nmax,sol;
while(L<=R)
{
int mid=(L+R)/2;
int kk=ver(mid);
if(kk<=k)
{
sol=mid;
R=mid-1;
}
else
{
L=mid+1;
}
}
return sol;
}
int main()
{
fin>>n>>k;
for(int i=1;i<=n;i++)
fin>>v[i];
fout<<rez();
}