Cod sursa(job #1051682)

Utilizator mvcl3Marian Iacob mvcl3 Data 10 decembrie 2013 13:34:56
Problema Secventa 2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.76 kb
#include <fstream>
#include <vector>

#define in "secv2.in"
#define out "secv2.out"

std :: ifstream f(in);
std :: ofstream g(out);

int N, K;
int beg_of_sum, end_of_sum, Best_Sum = -100000000, aux_sum;

int main()
{
    f >> N >> K;

    beg_of_sum = 1, end_of_sum = N;

    int beg = 1, sum = 0;

    for(int el, i = 1; i <= N; ++i)
    {
        f >> el;
        aux_sum += el;

        if(sum + el > el)   sum += el;
        else                sum = el, beg = i;

        if(Best_Sum < sum && i - beg + 1 >= K)
        {
            Best_Sum = sum;

            beg_of_sum = beg;
            end_of_sum = i;
        }
    }

    Best_Sum = std :: max(Best_Sum, aux_sum);

    g << beg_of_sum << ' ' << end_of_sum << ' ' << Best_Sum << '\n';

    g.close();
    return 0;
}