Cod sursa(job #2843395)

Utilizator LeonGSLeo Jechiu LeonGS Data 2 februarie 2022 13:28:59
Problema Subsecventa de suma maxima Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.66 kb
#include <bits/stdc++.h>
using namespace std;

int v[6000005];

int main(){
    ifstream cin("ssm.in");
    ofstream cout("ssm.out");
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);
    int n;
    cin >> n;
    for(int i=1; i<=n; i++){
        cin >> v[i];
    }
    int bestsum = INT_MIN;
    int sum = 0, idx, beg, end;
    for (int i = 1; i <= n; i++) {
        if(sum < 0) {
            sum = v[i], idx = i;
        } else {
            sum += v[i];
        }
        if (bestsum < sum) {
            bestsum = sum, beg = idx, end = i;
        }
    }
    cout << bestsum << ' ' << beg << ' ' << end;
    return 0;
}