Cod sursa(job #1976496)

Utilizator DAVID_ZANFIRZanfir David DAVID_ZANFIR Data 3 mai 2017 15:57:20
Problema Transport Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.8 kb
#include<fstream>
#include<iostream>
using namespace std;
int n ,k ,v[16000+7] ,maxim ,suma;
int main()
{
    ifstream fin ("transport.in");
    ofstream fout ("transport.out");
    fin>>n>>k;
    for(int i=1;i<=n;i++) fin>>v[i];
    for(int i=1;i<=n;i++)
    {
        if(v[i]>maxim) maxim=v[i];
        suma=suma+v[i];
    }
    //cout<<maxim<<" "<<suma<<"\n";
    for(int i=maxim;i<=suma;i++)
    {
        int candidat=i;
        int cnt=0,sum=0;
        for(int j=1;j<=n;j++)
        {
            if(sum+v[j]>candidat)
            {
                cnt++;
                sum=v[j];
                continue;
            }
            sum+=v[j];
        }
        if(sum!=0) cnt++;
        if(cnt>k) continue;
        fout<<candidat<<"\n";
        break;
    }
    return 0;
}