Cod sursa(job #1902497)

Utilizator Andrei501Clicinschi Andrei Andrei501 Data 4 martie 2017 17:12:23
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.75 kb
#include <cstdio>

using namespace std;

int main()
{
    freopen ("ssm.in","r",stdin);
    freopen ("ssm.out","w",stdout);

    int N,a;
    scanf ("%d",&N);
    scanf ("%d",&a);

    int i,best=a,p=1,p1=1,p2=1,Max=a;

    for (i=2; i<=N; i++)
    {
        scanf ("%d",&a);
        if (best+a>=a)
        {
            best+=a;
            if (best>Max)
            {
                p1=p;
                p2=i;
                Max=best;
            }
        }
        else
        {
            best=a;
            p=i;
            if (best>Max)
            {
                p1=i;
                p2=i;
                Max=best;
            }
        }
    }

    printf ("%d %d %d\n",Max,p1,p2);

    return 0;
}