Cod sursa(job #2321199)

Utilizator andra_moldovanAndra Moldovan andra_moldovan Data 15 ianuarie 2019 19:59:32
Problema Subsecventa de suma maxima Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.63 kb
#include <fstream>

#define inf 0x3f3f3f3f

using namespace std;

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

inline void Read(int &n) {
    int x, in, maxi = -inf, inceput, sfarsit, sum = 0;

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

        if (sum < 0)
            sum = 0,
            in = i;
        sum += x;

        if (sum > maxi) {
            maxi = sum;
            inceput = in;
            sfarsit = i;
        }
    }

    fout << maxi << " " << inceput << " " << sfarsit;
}

int main () {
    int n;

    Read(n);

    fin.close(); fout.close(); return 0;
}