Cod sursa(job #1009102)

Utilizator laurageorgescuLaura Georgescu laurageorgescu Data 12 octombrie 2013 15:02:30
Problema Transport Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.8 kb
#include<cstdio>
using namespace std;
int s,n,k,k_fals,i,check;
bool bn=0;
int v[16000];
void verif()
{
    s=0;k_fals=1;
    for (i=0;i<n && k_fals<=k;++i)
        {
        if (s+v[i]>check)
            {
            ++k_fals;
            s=0;
            }
        s=s+v[i];
        }
    if (i==n && k_fals==k)
            bn=1;
}
int main()
{
    FILE *fin=fopen("transport.in","r"),*fout=fopen("transport.out","w");
    fscanf(fin,"%d%d",&n,&k);
    s=0;
    for (i=0;i<n;++i)
        {
        fscanf(fin,"%d",&v[i]);
        s+=v[i];
        }
    if (s%k==0)
            check=s/k-1;
    else
            check=s/k;
    while (!bn)
        {
        ++check;
        verif();
        }
    fprintf(fout,"%d\n",check);
    fclose(fin);
    fclose(fout);
    return 0;
}