Cod sursa(job #2204175)

Utilizator GarboteialexGarbotei Alex Garboteialex Data 14 mai 2018 20:54:33
Problema Secventa 2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.82 kb
#include <iostream>
#include <fstream>
#include <vector>
#include <deque>

using namespace std;

#define DM 50000

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

int n,k,val[DM + 1];
int totalSum,ans = -1250000009,c1,c2;

void solve() {
    int sum = val[1];
    totalSum = val[1];
    c1 = 1;

    for(int i = 2; i <= n; i++) {
        if(sum < 0) {
            sum = val[i];
            c1 = i;
        } else {
            sum += val[i];
        }

        if(sum > ans && i - c1 + 1 >= k) {
            ans = sum;
            c2 = i;
        }

        totalSum += val[i];
    }
}

int main() {
    fin >> n >> k;
    for(int i = 1; i <= n; i++) {
        fin >> val[i];
    }

    solve();

    if(k == n) {
        fout << "1" << " " << n << " " << totalSum;
    } else{
        fout << c1 << " " << c2 << " " << ans;
    }
    
}