Cod sursa(job #1098811)

Utilizator alexandra_udristoiuUdristoiu Alexandra Maria alexandra_udristoiu Data 5 februarie 2014 11:16:28
Problema Transport Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include<fstream>
using namespace std;
int n, k, st, dr, mid, t, i, s;
int v[16001];
ifstream fin("transport.in");
ofstream fout("transport.out");
int main(){
    fin>> n >> k;
    dr = 0;
    for(i = 1; i <= n; i++){
        fin>> v[i];
        dr+= v[i];
    }
    st = 1;
    while(st <= dr){
        mid = (st + dr) / 2;
        s = 0;
        t = 1;
        for(i = 1; i <= n; i++){
            s = s + v[i];
            if(s > mid){
                t++;
                s = v[i];
            }
        }
        if(t > k){
            st = mid + 1;
        }
        else{
            dr = mid - 1;
        }
    }
   fout<< st;
}