Cod sursa(job #2990680)

Utilizator nnmadalinNeauna Madalin nnmadalin Data 8 martie 2023 12:36:08
Problema Secventa 2 Scor 60
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.95 kb
#include <bits/stdc++.h>
using namespace std;

#define swap(a,b) a^=b^=a^=b
#define max(a,b) a>b?a:b
#define min(a,b) a<b?a:b

const string file_name = "secv2";
ifstream fin(file_name + ".in");
ofstream fout(file_name + ".out");

int n, k;
long long s = 0, istart = 1, ifin = 1, nmax = -999999, a = 1, b = 1;

int main(){

    fin >> n >> k;

    for(int i = 1; i <= n; i++){
        int x; fin >> x;
        s += x;
        if(s < 0){
            s = x;
            istart = i;
            ifin = i;
            if(s > nmax && k == 1){
                nmax = x;
                b = i;
                a = i;
                ifin = i;
            }

        }
        else{
            if(s > nmax && i - istart + 1 >= k){
                nmax = s;
                b = i;
                a = istart;
                ifin = i;
            }
        }
    }



    fout << a << " " << b << " " << nmax;


    return 0;
}