Cod sursa(job #1671078)

Utilizator mircearoataMircea Roata Palade mircearoata Data 1 aprilie 2016 12:02:12
Problema Transport Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.85 kb
#include <iostream>
#include <fstream>

using namespace std;

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

int n,k;
int v[16001],s,trans;

int main()
{
    in>>n>>k;
    for(int i = 1; i<=n; i++)
    {
        in>>v[i];
    }
    int capacitate=0,ok;
    while(1)
    {
        capacitate++;
        s=0;
        ok=1;
        trans=0;
        for(int i = 1; i<=n; i++)
        {
            if(s+v[i]<capacitate)
            {
                s+=v[i];
            }
            else
            {
                if(s>capacitate)
                {
                    ok=0;
                    break;
                }
                trans++;
                s=v[i];
            }
        }
        if(trans<=k&&ok)
        {
            out<<capacitate;
            break;
        }
    }
    return 0;
}