Cod sursa(job #2794390)

Utilizator whitevader28Albu Alexandru whitevader28 Data 4 noiembrie 2021 19:31:02
Problema Subsecventa de suma maxima Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.72 kb
#include<iostream>
#include<fstream>

using namespace std;
fstream fin("ssm.in");
ofstream fout("ssm.out");

int main()
{
    int n, max_global, max_current, st, dr, s;
    cin >> n;
    int a[n];
    cin >> a[0];
    max_global=max_current=a[0];
    st=dr=s=0;
    for(int i=1; i<n; i++)
    {
        cin >> a[i];
        if(a[i]>max_current+a[i])
        {
            max_current=a[i];
            s=i;
        }
        else
        {
            max_current=max_current+a[i];
        }
        if (max_current>max_global)
        {
            max_global = max_current;
            st = s;
            dr = i;
        }
    }
    cout << max_global << ' ' << st+1 << ' ' << dr+1;
    return 0;
}