Cod sursa(job #766334)

Utilizator bratualexBratu Alexandru bratualex Data 11 iulie 2012 00:25:50
Problema Transport Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.03 kb
#include <fstream>

using namespace std;
ifstream fin("transport.in");

ofstream fout("transport.out");


int a[16000],n,k;
int main()
{
    int i,sum=0,max=0,s=0,gata,nrt,j;
    fin>>n>>k;

    for (i=0;i<n;i++)
    {

        fin>>a[i];
        if ( a[i]>max )
            max=a[i];
        sum=sum+a[i];
    }
    nrt=k;

    gata=0;
    for(i=max;i<=sum&&!gata;i++)
    {
        nrt=k;
        j=0;
        s=a[0];
        while(nrt&&j<n)
        {
            j++;
            if(s+a[j]>i)
            {
                nrt--;
                s=a[j];

                //j++;
            }
            else
                if ( s+a[j]<i)
                {
                    s=s+a[j];
//                    j++;
                }
                else
                {
                    s=0;
  //                  j++;
                    nrt--;
                }
        }
        if (j==n)
            gata=1;

    }
    fout<<--i;

    fin.close();
    fout.close();
    return 0;
}