Pagini recente » Cod sursa (job #559250) | Cod sursa (job #704984) | Cod sursa (job #886887) | Cod sursa (job #2249870) | Cod sursa (job #1303843)
#include<iostream>
#include<fstream>
using namespace std;
int main()
{
fstream f("transport.in");
ofstream g("transport.out");
int n,k,t,p,i,c,s,w,a[20000];
f>>n>>k;
t=0; //total
p=k; //transporturi ramase
for(i=1;i<=n;i++)
{f>>a[i];t=t+a[i];}
i=1;
c=1; //capacitatea ceruta
s=0; //adunarea volumelor adaugate
w=t; //total continuu
while(p>0)
{
if(w>0)
if((s<c) && (s+a[i]<=c))
{
s=s+a[i];w=w-a[i];i++;
}
else {p--; s=0;}
else p=0;
if((p==0) && (w>0))
{
c++; p=k; w=t;s=0; i=1;
}
}
g<<c;
f.close();
g.close();
return 0;
}