Cod sursa(job #2665494)

Utilizator IoanMihaiIoan Mihai IoanMihai Data 30 octombrie 2020 21:45:09
Problema Secventa 2 Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.68 kb
#include <bits/stdc++.h>
using namespace  std;
#define INF 2000000000
int start, finish, p;
long long s, smax;
int n, k, sum[50005], best[50005], a[50005];
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", &a[i]);
        sum[i] = sum[i-1] + a[i];
    }
    s = INF;
    smax = -INF;
    for (int i=k;i<=n;i++){
        if (sum[i-k] < s){
            s = sum[i-k];
            p = i-k+1;
        }
        if (sum[i] - s > smax){
            smax = sum[i] - s;
            start = p;
            finish = i;
        }
    }
    printf("%d %d %lld", start, finish, smax);
    return 0;
}