Cod sursa(job #2641319)

Utilizator robeert.77Chirica Robert robeert.77 Data 10 august 2020 23:41:48
Problema Subsecventa de suma maxima Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.7 kb
#include <fstream>
using namespace std;

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

int main() {
    fin.tie(0);
    ios::sync_with_stdio(0);

    int n, sum = 0, el;
    fin >> n;
    int maxSum, startPos, endPos, minn = 0, position;
    for (int i = 0; i < n; i++) {
        fin >> el;
        sum += el;

        if (!i || maxSum < sum - minn) {
            maxSum = sum - minn;
            startPos = position + 1;
            endPos = i;
        }
        if (!i || minn > sum) {
            minn = sum;
            position = i;
        }
    }

    fout << maxSum << " " << startPos + 1 << " " << endPos + 1;
    fin.close();
    fout.close();

    return 0;
}