Cod sursa(job #899945)

Utilizator caliuxSegarceanu Calin caliux Data 28 februarie 2013 17:01:29
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.56 kb
#include <stdio.h>
#include <algorithm>
using namespace std;
int N, val, st, dr, i, smax, start, finish, sc, smax2, aux;
int main(){
    freopen("ssm.in", "r", stdin);
    freopen("ssm.out", "w", stdout);
    scanf("%d", &N);
    smax = -(1 << 30) - 1;
    for(i = 1; i <= N; i++){
        scanf("%d", &val);
        if(sc < 0){
            sc = val;
            aux = i;
        }else{
            sc += val;
        }
        if(sc > smax){
            smax = sc; start = aux; finish = i;
        }
    }
    printf("%d %d %d", smax, start, finish);
}