Cod sursa(job #2905114)

Utilizator arealbirdStancu David arealbird Data 19 mai 2022 16:55:04
Problema Subsecventa de suma maxima Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.66 kb
#include <iostream>
#include <fstream>
using namespace std;

ifstream fin("ssm.in");
ofstream fout("ssm.out");
int v[6000005];
int main()
{
    int n;
    fin >> n;
    int in = 1, pozitie1_smax = -1, pozitie2_smax = -1;
    long long s = 0, smax = INT_MIN;
    for(int sf = 1; sf <= n; sf++)
    {
        fin >> v[sf];
        s = s + v[sf];

        if(s >= smax)
        {
            smax = s;
            pozitie1_smax = in;
            pozitie2_smax = sf;
        }

        if(s < 0)
        {
            s = 0;
            in = sf + 1;
        }
    }
    fout << smax << " " <<pozitie1_smax << " " << pozitie2_smax;
    return 0;
}