Cod sursa(job #1453270)

Utilizator savinvadim1312savin vadim savinvadim1312 Data 23 iunie 2015 10:06:36
Problema Transport Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.68 kb
#include <iostream>
#include <fstream>

using namespace std;

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

int N,t[100],s,K;

int div(int low,int high){
    cout<<low<<" "<<high<<endl;
    int mid,nr,q;
    if(low==high)
        return low;
    mid=(high+low)/2;

    q=0;nr=1;
    for(int i=0;i<N;i++){
        q+=t[i];
        if(q+t[i+1]>=mid){
            nr++;
            q=0;
        }
    }
    if(nr>K)
        return div(mid+1,high);
    else
        return div(low,mid-1);

}

int main()
{
    f>>N>>K;
    s=0;
    for(int i=0;i<N;i++){
        f>>t[i];
        s+=t[i];
    }

    g<<div(s/K,s);








    return 0;
}