Cod sursa(job #2813398)

Utilizator AndreeaDinuDinu Andreea Irina AndreeaDinu Data 6 decembrie 2021 15:56:47
Problema Subsecventa de suma maxima Scor 55
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.58 kb
#include <fstream>

using namespace std;
int v[600000];
int main()
{
    ifstream fin ("ssm.in");
    ofstream fout ("ssm.out");
    long long s = -1, n, i, smax=0, start, dr, st;
    fin >> n;
    for ( i = 1; i <= n; i ++)
         fin >> v[i];
    for (i = 1; i <= n; i ++)
    {
        if ( s < 0 )
        {
            s = 0;
            start = i;
        }
        s = s + v[i];
        if ( s > smax)
        {
            smax = s;
            st = start;
            dr = i;
        }
    }
    fout << smax << " " << st << " " << dr;
    return 0;
}