Cod sursa(job #2344532)

Utilizator BogdanAlexandruBogdan-Alexandru Dig BogdanAlexandru Data 15 februarie 2019 10:49:07
Problema Subsecventa de suma maxima Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.57 kb
#include <stdio.h>
#include <climits>
using namespace std;
FILE *f,*g;
#define read(a) fscanf(f,"%d",&(a))
#define display(a) fprintf(g,"%d ",(a))
void Solve()
{
    int S=0,N,BestSum=-INT_MAX,X,begin,end,i=1,st;
    read(N);
    for(;i<=N;i++)
    {
        read(X);
        if(S<0)
            S=X,st=i;
        else
            S+=X;
        if(S>BestSum)BestSum=S,begin=st,end=i;
    }
    display(BestSum),display(begin),display(end);
}
int main()
{
    f=fopen("ssm.in","r");g=fopen("ssm.out","w");
    Solve();
    fclose(f),fclose(g);
    return 0;
}