Cod sursa(job #752496)

Utilizator ana.zetg wea tw ana.z Data 28 mai 2012 19:02:01
Problema Transport Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.51 kb
#include<fstream>
using namespace std;
long n,ii,c,dif,t,cnt,nrt,nrtm,k,i,s[16000],x;
int main()
{
	ifstream in("transport.in");
	ofstream out("transport.out");
	in>>n>>k;
	for(i=1;i<=n;i++)
		{
		in>>s[i];
		nrtm=nrtm+s[i];
		if(s[i]>nrt)
			nrt=s[i];
		}
	while(nrt!=nrtm)
		{
		dif=nrtm-nrt+1;
		t=nrt+dif/2;
		cnt=0;
		for(i=1;i<=n;i)
		{
			ii=0;
			while(ii+s[i]<t)
			{
				ii=ii+s[i];
				i++;
				if(i==n+1)
					ii=t+1;
			}
			cnt++;
		}
		if(cnt>k)
			nrt=t;
		else
			nrtm=t;
	}
	out<<nrt;
	return 0;
}