Cod sursa(job #2494790)

Utilizator ValentinStStamate Valentin ValentinSt Data 18 noiembrie 2019 14:17:07
Problema Subsecventa de suma maxima Scor 85
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.55 kb
#include <iostream>
#include <fstream>
using namespace std;

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

int v[6000002];
int bMax[6000002];

int main(){

  int n;
  in>>n;
  for(int i = 1; i <= n; i++){
    in>>v[i];
  }

  int iD = 1, jD = 1;

  int sum = 0;
  int bestSum = -2000000000;

  for(int i = 1; i <= n; i++){
    sum += v[i];
    if(sum < 0){
      sum = 0;
      iD = i + 1;
    }
    else if(sum > bestSum){
      bestSum = sum;
      jD = i;
    }
  }

  out<<bestSum<<" "<<iD<<" "<<jD;


  return 0;
}