Cod sursa(job #1987211)

Utilizator ArctopusKacso Peter-Gabor Arctopus Data 29 mai 2017 22:42:30
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.72 kb
#include <iostream>
#include <vector>
#include <fstream>
#include <climits>

#define ll long long

using namespace std;

 ifstream fin("ssm.in");
ofstream fout("ssm.out");

const int NLIM = 6e6;

int N;

int hsum = 0;
int hl, hr;

int sum = INT_MIN;
int l, r;

int main()
{
    fin >> N;
    for( hr = 0; hr < N; ++hr )
    {
        int x;
        fin >> x;

        if( x > hsum + x )
        {
            hl = hr;
            hsum = x;
        }
        else
        {
            hsum += x;
        }

        if( hsum > sum )
        {
            sum = hsum;
            l = hl;
            r = hr;
        }
    }

    fout << sum << " " << l + 1 << " " << r + 1;

    return 0;
}