Cod sursa(job #1037448)

Utilizator morlockRadu Tatomir morlock Data 20 noiembrie 2013 11:38:27
Problema Transport Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.63 kb
#include <iostream>
#include <fstream>
#define nmax 16005
using namespace std;

ifstream in("transport.in");
ofstream out("transport.out");

int N, K, v[nmax], C=0, nr=0, s=0;

int main()
{
    in >> N >> K;
    for ( int i=1; i<=N; ++i )
    {
        in >> v[i];
        if ( v[i] > C ) C = v[i];
    }

    do
    {
        s = 0;
        nr = 1;
        for ( int i=1; i<=N; ++i )
            if ( s + v[i] <= C ) s += v[i];
                else
                {
                    nr++;
                    s = v[i];
                }
        if ( nr > K ) C++;
    } while ( nr > K );


    out << C;
}