Cod sursa(job #2387842)

Utilizator RaresLiscanLiscan Rares RaresLiscan Data 25 martie 2019 11:56:19
Problema Subsecventa de suma maxima Scor 85
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.58 kb
#include <bits/stdc++.h>

using namespace std;

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

vector <int> v;

int main()
{
    int n;
    fin >> n;
    int a;
    fin >> a;
    v.push_back(a);
    for (int i = 1; i < n; i ++) {
        fin >> a;
        v.push_back(a + v[i - 1]);
    }
    int minim = 0, best = -0x3f3f3f3f, b = -1, e = 0;
    for (int i = 0; i < n; i ++) {
        if (v[i] - minim > best) best = v[i] - minim, e = i;
        if (v[i] < minim) minim = v[i], b = i;
    }
    fout << best << " " << b + 2 << " " << e + 1;
    return 0;
}