Cod sursa(job #1900823)

Utilizator cella.florescuCella Florescu cella.florescu Data 3 martie 2017 16:46:04
Problema Secventa 2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.67 kb
#include <bits/stdc++.h>

using namespace std;

const int MAXN = 5e4;

int v[MAXN + 1];

int main()
{
    int n, k, pmin, maxc, maxl, maxr;
    ifstream fin("secv2.in");
    fin >> n >> k;
    for (int i = 1; i <= n; ++i) {
      fin >> v[i];
      v[i] += v[i - 1];
    }
    fin.close();
    pmin = 0; maxc = -2e9;
    for (int i = k; i <= n; ++i) {
      if (v[pmin] > v[i - k])
        pmin = i - k;
      if (maxc < v[i] - v[pmin]) {
        maxc = v[i] - v[pmin];
        maxl = pmin + 1;
        maxr = i;
      }
    }
    ofstream fout("secv2.out");
    fout << maxl << " " << maxr << " " << maxc << '\n';
    fout.close();
    return 0;
}