Cod sursa(job #703590)

Utilizator techLaurentiu Avasiloaie tech Data 2 martie 2012 13:00:10
Problema Transport Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.63 kb
#include <stdio.h>
using namespace std;
int n,k,c,j,b,v[16010],s2,k2,r,s1;
long long int i,s,minv,h;
int ccc(int j, long long int s){
	k2=0; r=1; s1=0;
	while(s1!=s){
		s2=0;
		while(s2+v[r]<=j){
			s2=s2+v[r];
			r++;
		}
		s1=s1+s2;
		k2++;
	}
	return k2;
}
int main()
{
	freopen("transport.in", "r", stdin);
	freopen("transport.out", "w", stdout);
	scanf("%d %d %d", &n,&k,&v[1]);
	s=v[1]; minv=v[1];
	for(b=2;b<=n;b++){
		scanf("%d", &v[b]);
		s=s+v[b];
		if(v[b]>minv){
			minv=v[b];
		}
	}
	h=k+1;
	for(b=minv;b<=16010;b++){
		h=ccc(b,s);
		if(h<=k){
			break;
		}
	}
	printf("%d", b);
	return 0;
}