Cod sursa(job #2617833)

Utilizator matthriscuMatt . matthriscu Data 22 mai 2020 23:18:52
Problema Subsecventa de suma maxima Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.62 kb
#include <fstream>

int main() {
    int n, i, x, currentSum = -1, bestSum = -2147483648, currentStart, bestStart, bestEnd;
    std::ifstream fin("ssm.in");
    std::ofstream fout("ssm.out");
    fin >> n;
    for(i = 1; i <= n; ++i) {
        fin >> x;
        if(currentSum < 0) {
            currentSum = x;
            currentStart = i;
        }
        else
            currentSum += x;
        
        if(currentSum > bestSum) {
            bestStart = currentStart;
            bestEnd = i;
            bestSum = currentSum;
        }
    }
    fout << bestSum << ' ' << bestStart << ' ' << bestEnd;
}