Cod sursa(job #3271674)

Utilizator mihaihvhTuburlui Mihai mihaihvh Data 26 ianuarie 2025 20:54:08
Problema Subsecventa de suma maxima Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.64 kb
#include <fstream>
#include <vector>
#include <climits>

using namespace std;

fstream cin("ssm.in");
ofstream cout("ssm.out");

int n;
vector<int> v;

int main() {
    cin >> n;
    for (int i = 1; i <= n; ++i) {
        int a;
        cin >> a;
        v.push_back(a);
    }

    int st, dr, start;
    long long Smax = LONG_LONG_MIN, s = -1;

    for (int i = 0; i < v.size(); ++i) {
        if (s < 0) {
            start = i;
            s = 0;
        }
        s += v[i];
        if (s > Smax) {
            Smax = s;
            st = start;
            dr = i;
        }
    }
    cout << Smax << ' ' << st + 1 << ' ' << dr + 1;
    return 0;
}