Cod sursa(job #2042147)

Utilizator dahaandreiDaha Andrei Codrin dahaandrei Data 18 octombrie 2017 09:27:13
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include <fstream>

using namespace std;

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

int st = 1, dr, sum, sumMax = -1000000000, nr, stMax, drMax, n  ;

int main(){
  in >> n;

  for (int i = 1; i <= n; ++ i){
    in >> nr;

    if (nr <= sum + nr){
      sum += nr;
      dr = i;
    }

    if (nr > sum + nr){
      sum = nr;
      st = i;
      dr = i;
    }

    if (sum > sumMax){
      stMax = st;
      drMax = dr;
      sumMax = sum;
    }
  }

  out << sumMax << " " << stMax << " " << drMax;

  return 0;
}