Cod sursa(job #1276269)

Utilizator Vlad_317Vlad Panait Vlad_317 Data 26 noiembrie 2014 09:13:57
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.66 kb
#include <stdio.h>
#include <limits.h>

using namespace std;

int main() {
    FILE *fin,*fout;

    fin=fopen("ssm.in","r");
    fout=fopen("ssm.out","w");

    int i,n,x,smax=INT_MIN,stcur=1,drcur=0,best=0,stmax,drmax;
    stmax=1;
    drmax=1;

    fscanf(fin,"%d",&n);

    for(i=1; i<=n; i++) {

        fscanf(fin,"%d",&x);

        if(best+x>=x)
        {
            drcur=i;
            best+=x;
        }
        else if(x>=best+x){
            stcur=drcur=i;
            best=x;
        }

        if(best>smax) {
            smax=best;
            stmax=stcur;
            drmax=drcur;
        }
    }

    fprintf(fout,"%d %d %d",smax,stmax,drmax);

    return 0;
}