Cod sursa(job #2529086)

Utilizator ancestralsymphonyEmanuel Muja ancestralsymphony Data 22 ianuarie 2020 22:17:42
Problema Secventa 2 Scor 80
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.72 kb
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
  int n, k, i, x, i1_final, i2_final;
  ifstream fin("secv2.in");
  fin >> n >> k;

  fin >> x;
  int sum_cu_x = x, sum_fara_x = x, max = x, i1 = 0, i2 = 0;
  for (i = 1; i < n; ++i) {
    fin >> x;
    sum_cu_x += x;

    if (sum_cu_x < 0) {
      sum_cu_x = 0;
      i1 = i + 1;
      i2 = i + 1;
    }

    if (sum_fara_x < sum_cu_x) {
      sum_fara_x = sum_cu_x;
      i2 = i;

      if (max < sum_cu_x)
        max = sum_cu_x;
    }

    if (i2 - i1 >= k - 1) {
      i1_final = i1 + 1;
      i2_final = i2 + 1;
    }
  }

  ofstream fout("secv2.out");
  fout << i1_final << ' ' << i2_final << ' ' << max;

  return 0;
}