Cod sursa(job #1029988)

Utilizator Alex.PAlexandru Pacurar Alex.P Data 15 noiembrie 2013 15:37:52
Problema Transport Scor 0
Compilator c Status done
Runda Arhiva de probleme Marime 0.84 kb
#include <stdio.h>
#include <stdlib.h>

int v[16000];

int main()
{
    FILE *fin, *fout;
    int n,k,i,x,z,d,s,l;
    fin=fopen("transport.in","r");
    fout=fopen("transport.out","w");
    fscanf(fin,"%d%d",&n,&k);
    for(i=0;i<n;i++)
    {
        fscanf(fin,"%d",&v[i]);
        s=s+v[i];
    }
    z=s;
    x=0;
    while(z-x>2)
    {
        l=(z-x)/2+x;
        d=0;
        i=0;
        while(i<n)
        {
            s=0;
            while(s+v[i]<l && i<n)
            {
                s=s+v[i];
                i++;
            }
            if(v[i]>l)
                d=k+1;
            i++;
            d++;
        }
        if(d<k)
            z=l;
        else
            x=l;
        printf("%d %d x ",x,z);
    }
    fprintf(fout,"%d",z);
    fclose(fin);
    fclose(fout);
    return 0;
}