Pagini recente » Cod sursa (job #1408422) | Cod sursa (job #2530909) | Cod sursa (job #1022956) | Cod sursa (job #760893) | Cod sursa (job #364392)
Cod sursa(job #364392)
#include<fstream>
using namespace std;
int n,a[16001],d,s,k;
int nr_trans(int C)
{int i=1,contor=0,s=0;
while(i<=n)
{ if(a[i]>C) return 0;
if(s+a[i]<=C) {s+=a[i];i++;}
else {contor++;s=0;}
}
return contor;}
int main()
{freopen("transport.in","r",stdin);
freopen("transport.out","w",stdout);
scanf("%d %d",&n,&k);
int d=1,s,v=0,aux;
for(int i=1;i<=n;i++) {scanf("%d",&a[i]);d+=a[i];}
s=a[1];
int lg,i,l,cont=0;
for(lg=1;lg<=d;lg<<=1);
for(i=d,l=lg;l;l>>=1)
{if(i-l>0 )
{printf("%d ",i);
aux=v;v=nr_trans(i-l);
if(v!=0) i=i-l;
}
}
printf("%d",i+1);
return 0;}