Cod sursa(job #2101670)

Utilizator eduardandrei20Nechifor Eduard Andrei eduardandrei20 Data 7 ianuarie 2018 19:39:24
Problema Transport Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.68 kb
#include <bits/stdc++.h>
using namespace std;

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

int v[16001] , n , k ,maxim;
void c()
{
    in >> n >> k;
    for ( int i =1 ; i <= n ; ++i)
           {in >> v[i];
           maxim=max(maxim,v[i]);
           }
}

bool mere( int valoare )
{ int sp=0; int aux = 1 ;
    for ( int i =1 ; i <= n ; ++ i)
    {
        if (sp+v[i]<=valoare)sp+=v[i];
        else {
            sp=v[i];
            ++ aux;
            if (aux>k) return false;
        }
    }
    return true;
}


int main()
{c();
int af = maxim;
for( ; ; )
{
    if(mere(af)) {out << af; break;}
    else af++;
}


    return  0 ;
}