Pagini recente » Cod sursa (job #3220349) | Cod sursa (job #1688895) | Cod sursa (job #225679) | Cod sursa (job #2624655) | Cod sursa (job #1558662)
#include <fstream>
using namespace std;
int Max=0,Camion=-1,p,s,Val;
int main()
{int a[16001],i,n,k;
ifstream f("transport.in");
ofstream g("transport.out");
f>>n>>k;
for(i=1;i<=n;i++)
{
f>>a[i];
Max+=a[i];
if(Camion<a[i])
{
Camion=a[i];
}
}
while(Camion<=Max)
{
Val=(Camion+Max)/2;
p=1;
s=0;
for(i=1;i<=n;i++)
{
s=s+a[i];
if(s>Val)
{
s=a[i];
p++;
}
}
if(p<=k)
{
Max=Val-1;
}
else
{
Camion=Val+1;
}
}
g<<Camion;
f.close();
g.close();
return 0;
}