Cod sursa(job #2509654)

Utilizator victorzarzuZarzu Victor victorzarzu Data 14 decembrie 2019 14:29:54
Problema Transport Scor 10
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.81 kb
#include <bits/stdc++.h>

using namespace std;
ifstream f("transport.in");
ofstream g("transport.out");
int n,k;
int maxim = -INFINITY,maximt = -INFINITY;
int a[16000];
void Citire()
{
    f>>n>>k;
    for(int i=1;i<=n;++i)
    {
        f>>a[i];
        if(a[i] > maxim) maxim = a[i];
    }
    f.close();
}

void Rezolvare()
{
    int s = 0;
    int i;
    for(i=1;i<=n , k > 1;++i)
    {
        if(s + a[i] <= maxim)
            s += a[i];
        else
        {
            --k;
            s = a[i];
        }
        if(k == 1) break;
    }
   s = 0;
   for(;i<=n;++i)
    s += a[i];
   if(s > maxim) maximt = s;
   else maximt = maxim;
}

void Afisare()
{
    g<<maximt;
    g.close();
}

int main()
{
    Citire();
    Rezolvare();
    Afisare();
    return 0;
}