Cod sursa(job #2764098)

Utilizator DooMeDCristian Alexutan DooMeD Data 19 iulie 2021 14:28:26
Problema Subsecventa de suma maxima Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.53 kb
#include <bits/stdc++.h>
using namespace std;

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

int sp[6000005];

int main () {
  int n; f >> n;
  for(int i=1; i<=n; i++) {
    f >> sp[i];
    sp[i]+=sp[i-1];
  }
  int mi = 0;
  int indmi = 0;
  int mx = -(2e9);
  int x,y;
  for(int i=1; i<=n; i++) {
    if(sp[i]-sp[indmi] > mx) {
      x = indmi + 1;
      y = i;
      mx = sp[i] - sp[indmi];
    }
    if(sp[i]<mi) {
      mi = sp[i];
      indmi = i;
    }
  }
  g << mx << " " << x << " " << y;
  return 0;
}