Cod sursa(job #2438567)

Utilizator Horia14Horia Banciu Horia14 Data 12 iulie 2019 19:13:05
Problema Subsecventa de suma maxima Scor 90
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.61 kb
#include<cstdio>
#define oo 0x7fffffff

int main() {
    int n, x, bestSum, sum, start, b, e, i;
    FILE* fin, *fout;
    fin = fopen("ssm.in","r");
    fout = fopen("ssm.out","w");
    fscanf(fin,"%d",&n);
    b = e = start = 1;
    bestSum = -oo;
    sum = 0;
    for(i = 1; i <= n; i++) {
        fscanf(fin,"%d",&x);
        if(sum < 0) {
            sum = x;
            start = i;
        } else sum += x;
        if(sum > bestSum) {
            bestSum = sum;
            b = start;
            e = i;
        }
    }
    fprintf(fout,"%d %d %d\n",bestSum,b,e);
    fclose(fin);
    fclose(fout);
    return 0;
}