Cod sursa(job #804884)

Utilizator madalincppaslaru madalin cristian madalincp Data 30 octombrie 2012 16:42:27
Problema Transport Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.64 kb
#include <iostream>
#include <fstream>
using namespace std;

int N, K;
int V[16010];

bool is_possible (int C) {

    int nr=1, cap=0;
    for(int i=1; i<=N; i++){
        if(V[i]>C)
            return 0;

        if(cap+V[i]<=C)
            cap+=V[i];
        else{
            nr++;
            cap=V[i];
        }
    }

    if(nr<=K)
        return 1;

    return 0;

}

int main () {

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

    fin>>N>>K;
    for(int i=1; i<=N ; i++)
        fin>>V[i];

    for(int j=1; ; j++){

        if(is_possible (j)==1){
            fout<<j;
            break;
        }
    }



    return 0;
}