Cod sursa(job #1329235)

Utilizator roxanastRoxana Stiuca roxanast Data 29 ianuarie 2015 11:28:49
Problema Transport Scor 10
Compilator cpp Status done
Runda prega_oji2015_ix_3 Marime 1.11 kb
#include <iostream>
#include <fstream>
using namespace std;
int a[16001],n,k,max1,s,i,maxsuma,s1,r,r1,j;
ofstream g("transport.out");
int main()
{
    freopen("transport.in","r",stdin);
    scanf("%d%d",&n,&k);
    max1=0;
    s=0;
    for(i=1;i<=n;i++)
        {scanf("%d",&a[i]);
        s=s+a[i];
        if(max1<a[i])
        max1=a[i];}
   /* s=s/k;
    if(max1>s)
    s=max1;
    r1=0;
    maxsuma=0;
    for(i=1;i<=n;i++)
    {
        s1=a[i];
        while(s1+a[i+1]<s+r1)
                {i++;
                s1=s1+a[i];}
        r1=r1+s-s1;
        if(s1>maxsuma)
        maxsuma=s1;
        cout<<s1<<" ";

    }
    g<<maxsuma;*/

    s=s/k;
    r=0;
    for(i=1;i<=n;i++)
    {
        s1=a[i];
        while(s1+a[i+1]<s&&i<n)
        {
            i++;
            s1=s1+a[i];
        }
        r=r+s-s1;
    }
    maxsuma=0;
    for(i=1;i<=n;i++)
    {
        s1=a[i];
        while(s1+a[i+1]<s+r&&i<n)
        {i++;
        s1=s1+a[i];}
        r=r-s1+s;
        if(s1>maxsuma)
        maxsuma=s1;
        cout<<s1<<" ";
    }
    g<<maxsuma;
    return 0;
}