Cod sursa(job #1077915)

Utilizator savulescustefanSavulescu Stefan savulescustefan Data 11 ianuarie 2014 19:45:41
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
#include <cstdio>

using namespace std;
int x,y,p,n,a[6000004],i,sc,smax;
int main()
{
    freopen ("ssm.in","r",stdin);
    freopen ("ssm.out","w",stdout);
    scanf ("%d", &n);
    for (i=1;i<=n;i++)
    scanf ("%d", &a[i]);
    sc=smax=a[1];
    p=x=y=1;
    for (i=2;i<=n;i++)
    {
        if (sc>=0)
        sc+=a[i];
        else
        {
             sc=a[i];
             p=i;
        }
        if (sc>smax)
        {
            smax=sc;
            x=p;
            y=i;
        }
    }
    printf ("%d %d %d", smax, x, y);
    return 0;
}