Cod sursa(job #594845)

Utilizator morlockRadu Tatomir morlock Data 9 iunie 2011 21:02:26
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.53 kb
#include <stdio.h>
#define nmax 7000005

int N, v[nmax], suma=-2e9, in, sf, min=0, k;

int main()
{
    freopen("ssm.in", "r", stdin);
    freopen("ssm.out", "w", stdout);

    scanf("%d", &N);

    for (int i=1; i<=N; ++i)
     scanf("%d", &v[i]);

     for (int i=1; i<=N; ++i)
      {
          v[i] += v[i-1];

          if (suma < v[i] - min)
           suma = v[i] - min, in = k + 1, sf = i;

          if (min > v[i])
           min = v[i], k = i;
      }


    printf("%d %d %d", suma, in, sf);


}