Cod sursa(job #2228516)

Utilizator andreisontea01Andrei Sontea andreisontea01 Data 4 august 2018 00:34:37
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.65 kb
#include <fstream>
#include <iostream>

using namespace std;

int main()
{
    ifstream fin("ssm.in");
    ofstream fout("ssm.out");
    int n;
    fin >> n;
    int x, sum, lastsum = 0, st = 1, lastst = 1, maxsum = -(1 << 30), ansleft = 0, ansright = 0;
    for(int i = 1; i <= n; ++i){
        fin >> x;
        sum = x;
        st = i;
        if(lastsum >= 0){
            sum += lastsum;
            st = lastst;
        }
        if(sum > maxsum){
            maxsum = sum;
            ansleft = st;
            ansright = i;
        }
        lastsum = sum;
        lastst = st;
    }
    fout << maxsum << " " << ansleft << " " << ansright;
    return 0;
}