Cod sursa(job #2956421)

Utilizator rapidu36Victor Manz rapidu36 Data 19 decembrie 2022 15:31:04
Problema Subsecventa de suma maxima Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.66 kb
#include <fstream>

using namespace std;

const int INF = 2e9;

int main()
{
    ifstream in("ssm.in");
    ofstream out("ssm.out");
    int n, sc = -1, smax = -INF, st, stmax, drmax;
    in >> n;
    for (int i = 1; i <= n; i++)
    {
        int x_i;
        in >> x_i;
        if (x_i > sc + x_i)
        {
            sc = x_i;
            st = i;
        }
        else
        {
            sc += x_i;
        }
        if (sc > smax)
        {
            smax = sc;
            stmax = st;
            drmax = i;
        }
    }
    out << smax << " " << stmax << " " << drmax;
    out.close();
    in.close();
    return 0;
}