Cod sursa(job #1519128)

Utilizator preda.andreiPreda Andrei preda.andrei Data 6 noiembrie 2015 21:13:43
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.62 kb
#include <iostream>
#include <stdio.h>

using namespace std;

int main()
{
    FILE *fin=fopen("ssm.in", "r");
    FILE *fout=fopen("ssm.out", "w");

    int n, x, s=0, sf=-100000, in1, in2, st, dr;

    fscanf(fin, "%d", &n);
    in1=in2=st=dr=0;
    for(int i=1; i<=n; ++i){
        fscanf(fin, "%d", &x);
        if(x>s+x || i==1){
            st=dr=i;
            s=x;
        }
        else{
            dr=i;
            s+=x;
        }

        if(s>sf){
            sf=s;
            in1=st;
            in2=dr;
        }

    }

    fprintf(fout, "%d %d %d", sf, in1, in2);
    return 0;
}