Cod sursa(job #1323013)

Utilizator borcanirobertBorcani Robert borcanirobert Data 20 ianuarie 2015 16:41:53
Problema Subsecventa de suma maxima Scor 95
Compilator cpp Status done
Runda Arhiva educationala Marime 0.69 kb
#include <cstdio>
using namespace std;

FILE *f = fopen( "ssm.in", "r" );
FILE *g = fopen( "ssm.out", "w" );

const long long INF = 99999999999999999999;
long long sp, s, nr;
long long N;
long long smax = -INF;
long long ic, sc;
long long st, dr;

int main()
{
    int i;

    fscanf( f, "%lld", &N );
    for ( i = 1; i <= N; i++ )
    {
        fscanf( f, "%lld", &nr );
        if ( nr + sp > nr )
            s = nr + sp, sc++;
        else
            s = nr, ic = i, sc = i;
        sp = s;

        if ( sp > smax )
            smax = sp, st = ic, dr = sc;
    }

    fprintf( g, "%lld %lld %lld\n", smax, st, dr );

    fclose(f);
    fclose(g);
    return 0;
}