Cod sursa(job #2404031)

Utilizator popashtefan10Popa Stefan popashtefan10 Data 12 aprilie 2019 11:10:45
Problema Subsecventa de suma maxima Scor 80
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.57 kb
#include <iostream>
#include <cstdio>

using namespace std;

int main() {
  FILE *fin = fopen("ssm.in", "r");
  FILE *fout = fopen("ssm.out", "w");
  int n, i, x, maxim = -1e9, s = 0, st, dr, stmax, drmax;

  fscanf(fin, "%d", &n);
  for(i = 1; i <= n; i++) {
    fscanf(fin, "%d", &x);
    if(x > x + s) {
      s = x;
      st = i;
      dr = i;
    }
    else {
      s += x;
      dr = i;
    }
    if(s > maxim) {
      maxim = s;
      stmax = st;
      drmax = dr;
    }
  }
  fprintf(fout, "%d %d %d", maxim, stmax, drmax);

  return 0;
}