Cod sursa(job #1497799)

Utilizator tonicodreaAntonio Codrea tonicodrea Data 7 octombrie 2015 13:14:33
Problema Subsecventa de suma maxima Scor 55
Compilator cpp Status done
Runda Arhiva educationala Marime 0.53 kb
#include <fstream>
using namespace std;
ifstream fi("ssm.in");
ofstream fo("ssm.out");
long long a[6000007], s , i, j, n, maxim , l , k , lmax, kmax, o;
int main()
{
  fi >> n;
  for (i = 1; i <= n; i++)
    fi >> a[i];
  for (i = 1; i <= n; i++)
  { s+=a[i];
    if (s < 0)
    {
      s = 0; l = i; k = i; lmax = i+1;
      }
    else
    {
      if (l == 0) l = i; k = i;
      if ( maxim < s)
      {
        maxim = s;
        kmax=k;
      }
    }
  }
  fo << maxim << " " << lmax << " " << kmax;
  return 0;
}