Cod sursa(job #3354258)

Utilizator VleiuNastase Vlad Vleiu Data 17 mai 2026 02:07:17
Problema Subsecventa de suma maxima Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.78 kb
#include <iostream>
#include <vector>
#include <algorithm>
#include <fstream>

using namespace std;

int n;

int main(void) {

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

    fin >> n;

    long long maxSum = -2000000000; 
    long long currentSum = -2000000000;
    
    int bestStart = 1, bestEnd = 1;
    int currentStart = 1;

    for (int i = 1; i < n + 1; i++) {
        int val;
        fin >> val;

        if (currentSum < 0) {
            currentSum = val;
            currentStart = i;
        } else currentSum += val;

        if (currentSum > maxSum) {
            maxSum = currentSum;
            bestStart = currentStart;
            bestEnd = i;
        }

    }

    fout << maxSum << " " << bestStart << " " << bestEnd;
}