Cod sursa(job #2472275)

Utilizator AntoniuFicAntoniu Ficard AntoniuFic Data 12 octombrie 2019 10:52:24
Problema Secventa 2 Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.98 kb
#include <iostream>
#include <vector>
#include <fstream>

using namespace std;

vector<long long> valori, sume;

long long indmin, n, k, indmax, indminmax;

ifstream f("secv2.in");
ofstream g("secv2.out");

int main() {
    f>>n>>k;
    indmax=k;
    sume.push_back(0);
    valori.push_back(0);
    ++n;
    {
        long long x;
        f>>x;
        valori.push_back(x);
        sume.push_back(x);
        indmin = 0;
    }
    for (long long i = 1, x; i < k; ++i) {
        f>>x;
        valori.push_back(x);
        sume.push_back(x  + sume[sume.size() - 1]);
    }
    for (long long i = k, x; i < n; ++i) {
        f>>x;
        valori.push_back(x);
        sume.push_back(x  + sume[sume.size() - 1]);
        if(sume[i - k] < sume[indmin])
            indmin = i - k;
        if(sume[i] - sume[indmin] > sume[indmax] - sume[indminmax]){
            indminmax = indmin;
            indmax = i;
        }
    }
    g<<indminmax+1<<' '<<indmax<<' '<<sume[indmax] - sume[indminmax];
    return 0;
}