Cod sursa(job #2472230)

Utilizator SoranaAureliaCatrina Sorana SoranaAurelia Data 12 octombrie 2019 10:36:46
Problema Secventa 2 Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.69 kb
#include <cstdio>
#include <algorithm>
using namespace std;

int n, k, x;
int p[50005];
int vmax = - 999999999;
int pozmin, pozact;
int mins = 1500000000, ip;

int main()
{
    freopen("secv2.in", "r", stdin);
    freopen("secv2.out", "w", stdout);
    scanf("%d %d", &n, &k);
    for(int i=1; i<=n; ++i){
        scanf("%d", &x);
        p[i] = p[i-1] + x;
        if(i>=k){
            if(p[i-k]<mins)
                ip = i-k;
            mins = min(mins, p[i-k]);
        }
        if(p[i] - mins > vmax){
            vmax = p[i] - mins;
            pozact = i;
            pozmin = ip + 1;
        }
    }
    printf("%d %d %d", pozmin, pozact, vmax);
    return 0;
}