Cod sursa(job #2748952)

Utilizator andreisamoila74Samoila Andrei andreisamoila74 Data 4 mai 2021 13:19:57
Problema Subsecventa de suma maxima Scor 35
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.63 kb
#include <iostream>
#include <fstream>
using namespace std;

int sums[6000005];
int n, x;

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

int main() {
  f >> n;
  for (int i = 1; i <= n; ++i) {
    f >> x;
    sums[i] = sums[i - 1] + x;
  }

  int sum_max = 0;
  int index_i, index_j;
  for (int i = 0; i < n; ++i) {
    for (int j = i + 1; j <= n; ++j) {
      int sum = sums[j] - sums[i];
      if (sum > sum_max) {
        sum_max = sum;
        index_i = i + 1;
        index_j = j;
      } else if (sum == sum_max && i == index_i && j < index_j) {
        index_j = j;
      }
    }
  }

  g << sum_max << ' ' << index_i << ' ' << index_j;
}