Cod sursa(job #2664277)

Utilizator MattiaMattia Iojica Mattia Data 28 octombrie 2020 12:11:49
Problema Subsecventa de suma maxima Scor 90
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.69 kb
#include <bits/stdc++.h>

using namespace std;

ifstream f("ssm.in");
ofstream g("ssm.out");

int main()
{
    int indice_inceput = 0, indice_sfarsit = 0, s = 0, smax = 0;

    int n;

    f >> n;

    int i_curent = -1, j_curent = 0;

    for(int i = 1; i <= n; i++)
    {
        int x;
        f >> x;

        if(s == 0)
            i_curent = i;

        s += x;

        if(s < 0)
            s = 0;
        else
            if(s > smax)
            {
                smax = s;
                indice_inceput = i_curent;
                indice_sfarsit = i;
            }
    }

    g << smax << " " << indice_inceput << " " << indice_sfarsit;

    return 0;
}