Cod sursa(job #2581307)

Utilizator mihnea00Duican Mihnea mihnea00 Data 14 martie 2020 21:03:29
Problema Subsecventa de suma maxima Scor 70
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.7 kb
#include <fstream>
#include <iostream>

using namespace std;

int getSol (const int &n, int &idxF, int &idxL, ifstream &fin) {
    int x, sum = 0, sumMax = -2e9,  aux = 1;

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

        cout << sum << '\n';

        if (sum > sumMax) {
            sumMax = sum;
            idxL = i;
            idxF = aux;
        }
        if (sum < 0) {
            sum = 0;
            aux = i + 1;
        }
    }

    return sumMax;
}


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

    int n, idxF = 1, idxL = 1, sumMax = 0;

    fin >> n;
    sumMax = getSol(n, idxF, idxL, fin);

    fout << sumMax << ' ' << idxF << ' ' << idxL;
}