Cod sursa(job #2194573)

Utilizator AlexandruabcdeDobleaga Alexandru Alexandruabcde Data 13 aprilie 2018 19:20:20
Problema Subsecventa de suma maxima Scor 65
Compilator cpp Status done
Runda Arhiva educationala Marime 0.77 kb
#include <bits/stdc++.h>

using namespace std;
ifstream f ("ssm.in");
ofstream g ("ssm.out");
long long n,a[6000005],i,mx,x,in,sf,p;
int main()
{
    f >> n;
    for (i = 1; i <= n; i++)
    {
        f >> a[i];
    }
    x = a[1];
    in = sf = p = 1;
    mx = a[1];
    for (i = 2; i <= n; i++)
    {
        x = x + a[i];
        if (x < 0)
        {
            x = a[i];
            p = i;
            if (x > mx)
            {
                mx = x;
                in = p;
                sf = i;
            }
        }
        else
        {
            if (x > mx)
            {
                mx = x;
                in = p;
                sf = i;
            }
        }
    }
    g << mx << " " << in << " " << sf;
    return 0;
}