Cod sursa(job #2814241)

Utilizator Luca_Miscocilucainfoarena Luca_Miscoci Data 7 decembrie 2021 20:25:12
Problema Subsecventa de suma maxima Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.52 kb
#include <fstream>
using namespace std;

int main(){

  ifstream fin ("ssm.in");
  ofstream fout ("ssm.out");

  int n, a, ult, start, stop, k, sm;
  sm = ( 1 << 31 );
  fin >> n >> a;

  start = stop = k = 0;
  ult = a;
  sm = a;
  for (int i = 1; i < n; ++i){
    fin >> a;

    if (ult > 0)
      ult += a;
    else {
      ult = 0;
      k = i;
    }
    if (ult > sm){
      sm = ult;
      start = k;
      stop = i;
    }
  }

  fout << sm << " " << start + 1 << " " << stop + 1;
  return 0;
}