Cod sursa(job #1506998)

Utilizator Ruxandra985Nanu Ruxandra Laura Ruxandra985 Data 21 octombrie 2015 10:33:35
Problema Transport Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.75 kb
#include <fstream>

using namespace std;
int v[16001];
int main()
{
    FILE *fin=fopen ("transport.in","r");
    FILE *fout=fopen ("transport.out","w");
    int n,k,i,maxi,j,st,drm,s;
    fscanf (fin,"%d %d",&n,&k);
    maxi=0;
    for (i=0;i<n;i++){
        fscanf (fin,"%d",&v[i]);
        if (maxi<v[i]) maxi=v[i];
    }
    st=0;
    while (st==0){
        i=0;
        drm=0;
        while (i<n){
            j=i;
            s=v[j];
            while (j<n && s<maxi){
                j++;
                s+=v[j];
            }
            if (s==maxi)
                j++;
            i=j;
            drm++;
        }
        if (drm>k) maxi++;
        else st=1;
    }
    fprintf (fout,"%d\n",maxi);
    return 0;
}