Cod sursa(job #588898)

Utilizator vendettaSalajan Razvan vendetta Data 9 mai 2011 22:21:49
Problema Subsecventa de suma maxima Scor 90
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
# include <cstdio>
#define nmax 6000005

using namespace std;

int max, sum, i, idx, n, i1, i2, v[nmax];

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

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

    max = -int(2e9);
    for (i = 1; i <= n; ++i) {
        if (sum < 0) sum = v[i], idx = i;
        else
            sum += v[i];
        if (max < sum ){
            max = sum, i1 = idx, i2 = i;
        }
    }
    printf("%d %d %d\n", max, i1, i2);
    return 0 ;
}