Pagini recente » Borderou de evaluare (job #2745898) | Borderou de evaluare (job #2144219) | Borderou de evaluare (job #1855134) | Borderou de evaluare (job #2379811) | Cod sursa (job #2501667)
#include <fstream>
using namespace std;
ifstream fin("transport.in");
ofstream fout("transport.out");
int k,n,i,v[16001],d,s,mij,sum,vmax,kk,j;
int main()
{
fin>>n>>k;
for(i=1;i<=n;i++)
{
fin>>v[i];
if(v[i]>vmax)
{
vmax=v[i];
}
d=d+v[i];
}
s=vmax;
while(1)
{
kk=0;
sum=0;
mij=(s+d)/2;
for(i=1;i<=n;i++)
{
sum=sum+v[i];
if(sum>mij)
{
kk++;
sum=v[i];
}
}
kk++;
if(kk==k)
{
j=mij;
}
d=mij;
if(kk>k)
{
break;
}
}
fout<<j;
return 0;
}