Cod sursa(job #1053261)

Utilizator ZeBuGgErCasapu Andreas ZeBuGgEr Data 12 decembrie 2013 16:36:18
Problema Transport Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.24 kb
#include <fstream>

using namespace std;

int main()
{
    ifstream fin("transport.in");
    ofstream fout("transport.out");

    int n,k;
    long int temp=0,sum,temp2=0,temp3=1,m=0;
    bool check=1;
    fin>>n>>k;
    int a[n];
    for(int i=0;i<n;i++)
    {
            fin>>a[i];
            if(m<a[i])
                {
                m=a[i];
                }
            temp+=a[i];
    }
    sum=temp;
    if(temp%k==0)
        {
        temp/=k;
        }
    else
    {
    temp/=k;
    temp++;
    }
    if(temp<m)
        {
        temp=m;
        }
    while(1)
    {
        temp2=0;
        temp3=1;

                    for(int i=0;i<n;i++)
                    {
                    if(temp2+a[i]<=temp)
                        {
                        temp2+=a[i];
                        }
                    else{
                        temp2=a[i];
                        temp3++;
                        }
                    }
                    if(temp3>k)
                        {
                        temp++;
                        }
                    else
                        {
                        break;
                        }
    }
    fout<<temp;
}