Cod sursa(job #2956419)

Utilizator TudorAndreiCalciuCalciu Tudor Andrei TudorAndreiCalciu Data 19 decembrie 2022 15:26:19
Problema Subsecventa de suma maxima Scor 85
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.6 kb
#include <fstream>

using namespace std;
const int INF = 1e9;
int main()
{
    ifstream fin("ssm.in");
    ofstream fout("ssm.out");
    long long n, sc = -1, smax = -INF, st, dr;
    fin >> n;
    for(int i = 1; i <= n; i++)
    {
        int x_i;
        fin >> x_i;
        if(x_i > sc + x_i)
        {
            sc = x_i;
            st = i;
        }
        else
            sc += x_i;
        if(sc > smax)
        {
            smax = sc;
            dr = i;
        }
    }
    fout << smax << ' ' << st << ' ' << dr;
    fin.close();
    fout.close();
    return 0;
}