Cod sursa(job #2666859)

Utilizator maramihaliMara Mihali maramihali Data 2 noiembrie 2020 16:00:08
Problema Secventa 2 Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.72 kb
#include <bits/stdc++.h>

using namespace std;

const int INF = 1e9;

ifstream in("secv2.in");
ofstream out("secv2.out");

int v[50001], s[50001];

int main()
{
    int n, st, dr, k;
    in >> n >> k;
    for(int i = 1; i <= n; i++)
    {
        in >> v[i];
        s[i] = s[i - 1] + v[i];
    }
    int sc = s[k - 1], start = 1, smax = -INF;
    for(int i = k; i <= n; i++)
    {
        sc += v[i];
        if(s[i] - s[i - k] > sc)
        {
            start = i - k + 1;
            sc = s[i] - s[i - k];
        }
        if(sc > smax)
        {
            smax = sc;
            st = start;
            dr = i;
        }
    }
    out << st << " " << dr << " " << smax;
    return 0;
}