Cod sursa(job #909977)

Utilizator TeodoraTanaseTeodora Tanase TeodoraTanase Data 10 martie 2013 18:15:28
Problema Subsecventa de suma maxima Scor 95
Compilator cpp Status done
Runda Arhiva educationala Marime 0.66 kb
#include <cstdio>

#define INF (1 << 30)

using namespace std;

int n;
int x;
int s;
int l;
int lg;
int sf;
int maxim = -INF;

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

    scanf("%d\n", &n);
    for(int i = 1; i <= n; ++ i)
    {
        scanf("%d ", &x);

        if(s <= 0)
        {
            l = 1;
            s = x;
        }
        else
        {
            s += x;
            ++ l;
        }

        if(s > maxim)
        {
            maxim = s;
            sf = i;
            lg = l;
        }
    }

    printf("%d %d %d\n", maxim, sf - lg + 1, sf);

    return 0;
}