Cod sursa(job #1322951)

Utilizator Yasin_ibraimIbraim Yasin Yasin_ibraim Data 20 ianuarie 2015 15:48:10
Problema Subsecventa de suma maxima Scor 55
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
#include<stdio.h>
#include<limits.h>

int main()
{
    FILE *fin,*fout;
    fin=fopen("ssm.in","r");
    fout=fopen("ssm.out","w");
    int n,st=1,fi;
    fscanf(fin,"%d",&n);
    int a[n];
    for(int i=0;i<n;i++)    fscanf(fin,"%d",&a[i]);
    int sum=0,bestsum=-INT_MAX;
    for(int i=0;i<n;i++)
    {
        sum+=a[i];
        if(sum<0)
        {
               sum=0;
               st=i+2;
        }
        else if(sum>bestsum)
        {
            bestsum=sum;
            fi=i+1;
        }

    }
    fprintf(fout,"%d %d %d",bestsum,st,fi);
}