Cod sursa(job #1245745)

Utilizator raztaapDumitru raztaap Data 19 octombrie 2014 21:46:23
Problema Subsecventa de suma maxima Scor 95
Compilator cpp Status done
Runda Arhiva educationala Marime 0.76 kb
#include <cstdio>
int n, sum, best, idx, inc, sfx;
int v[6000100];
void citire()
{
    int i;
    scanf("%d\n", &n);
    for(i=1;i<=n;++i)
        scanf("%d", &v[i]);
}
void secsm()
{
    int i;
    sum=0;
    best=0;
    for(i=1;i<=n;++i)
    {
        if(sum<0)
        {
            sum=v[i];
            inc=i;
        }
        else
            sum+=v[i];
        if(sum>best)
        {
            best=sum;
            idx=inc;
            sfx=i;
        }
    }
}
void afisare()
{
    printf("%d %d %d", best, idx, sfx);
}
void rezolva_problema()
{
    citire();
    secsm();
    afisare();
}
int main()
{
    freopen("ssm.in", "r", stdin);
    freopen("ssm.out", "w", stdout);
    rezolva_problema();
    return 0;
}