Cod sursa(job #269463)

Utilizator mihai0110Bivol Mihai mihai0110 Data 2 martie 2009 22:21:13
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.56 kb
#include<stdio.h>
int x,sol=-6000001,p1,p2,i,n,sc,ps1,ps2;
int main(void)
{
    freopen("ssm.in","r",stdin);
    freopen("ssm.out","w",stdout);
    scanf("%d",&n);
    sc=sol;
    for(i=1;i<=n;i++)
    {
        scanf("%d",&x);
        if(x>sc+x)
        {
            p1=p2=i;
            sc=x;
        }
        else
        {
            p2=i;
            sc+=x;
        }
        if(sc>sol)
        {
            sol=sc;
            ps1=p1;
            ps2=p2;
        }
    }
    printf("%d %d %d\n",sol,ps1,ps2);
    return 0;
}