Cod sursa(job #2713950)

Utilizator AlexZeuVasile Alexandru AlexZeu Data 28 februarie 2021 22:38:21
Problema Secventa 2 Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.76 kb
#include <iostream>
#include <climits>
#include <fstream>
using namespace std;

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

int main(){
    int n, sum = 0, best_sum = INT_MIN, index, start, finish, x, k, total_sum = 0;
    fin >> n >> k;
    for (int i = 1; i <= n; ++i) {
        fin >> x;
        total_sum += x;
        if (sum <= 0) {
            index = i;
            sum = 0;
        }
        sum += x;
        if (sum >= best_sum && i - index >= k) {
            start = index;
            finish = i;
            best_sum = sum;
        }
    }
    if (best_sum == INT_MIN) {
        fout << 1 << " " << n << " " << total_sum;
    }
    else {
        fout << start << " " << finish << " " << best_sum;
    }
    return 0;
}