Cod sursa(job #1323478)

Utilizator Yasin_ibraimIbraim Yasin Yasin_ibraim Data 21 ianuarie 2015 08:32:00
Problema Subsecventa de suma maxima Scor 65
Compilator cpp Status done
Runda Arhiva educationala Marime 0.61 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,sdt;
    long long bestsum=-INT_MAX;
    long long sum=0;
    fscanf(fin,"%d",&n);
    int a[n];
    for(int i=0;i<n;i++)    fscanf(fin,"%d",&a[i]);
    for(int i=0;i<n;i++)
    {
        sum+=a[i];
        if(sum<0)
        {
            sum=0;
             st=i+1;
        }
        else if(sum>bestsum)
        {
            bestsum=sum;
            sdt=st+1;
            fi=i+1;
        }
    }
    fprintf(fout,"%lld %d %d",bestsum,sdt,fi);
}