Cod sursa(job #2100366)

Utilizator mariusn01Marius Nicoli mariusn01 Data 5 ianuarie 2018 15:54:12
Problema Transport Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.75 kb
#include <fstream>
#define DIM 16002
using namespace std;
int v[DIM];
int n, k, maxim, i, cap, cc, t;

int main () {
    ifstream fin ("transport.in");
    ofstream fout("transport.out");

    fin>>n>>k;
    maxim = -1;
    for (i=1;i<=n;i++) {
        fin>>v[i];
        if (v[i] > maxim)
            maxim = v[i];
    }

    for (cap = maxim; ;cap++) {
        /// numar cate transporturi as face cu un camion de capacitate cap
        cc = cap - v[1];
        t = 1;
        for (i=2;i<=n;i++) {
            if (v[i] <= cc)
                cc -= v[i];
            else {
                t++;
                cc = cap - v[i];
            }
        }
        if (t <= k) {
            fout<<cap;
            break;
        }
    }

}