Cod sursa(job #2849266)

Utilizator Alexandru_DuraDura Alexandru Sebastian Alexandru_Dura Data 14 februarie 2022 19:34:14
Problema Subsecventa de suma maxima Scor 100
Compilator cpp-32 Status done
Runda Arhiva educationala Marime 0.6 kb
#include <fstream>

using namespace std;

ifstream fin("ssm.in");
ofstream fout("ssm.out");

int main()
{
    int inf = -int(2e9);
    int x,n,sc,smax,ind_in,ind_sf,k;
    sc = smax = inf;
    fin >> n;
    for(int i = 1; i <= n; i++)
    {
        fin >> x;
        if(x > sc + x)
        {
            sc = x;
            k = i;
        }
        else
        {
            sc += x;
        }
        if(sc > smax)
        {
            smax = sc;
            ind_in = k;
            ind_sf = i;
        }
    }
    fout << smax << " " << ind_in << " " << ind_sf;
    return 0;
}