Cod sursa(job #2614986)

Utilizator Cristian25Cristian Stanciu Cristian25 Data 13 mai 2020 00:45:24
Problema Subsecventa de suma maxima Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.72 kb
#include <bits/stdc++.h>

using namespace std;

const char* inputFile = "ssm.in";
const char* outputFile = "ssm.out";

int main()
{
    ifstream in(inputFile);
    unsigned N, st, dr;
    in >> N;
    vector<int> v(N), sp(N);
    int smax = INT_MIN;
    for(unsigned i = 0; i < N; ++i)
    {
        in >> v[i];
        sp[i] = (!i ? v[0] : sp[i - 1] + v[i]);
        for(unsigned j = 0; j < i; ++j)
            if(sp[i] - sp[j] + v[j] > smax)
            {
                smax = sp[i] - sp[j] + v[j];
                st = i;
                dr = j;
            }
    }
    in.close();
    ofstream out(outputFile);
    out << smax << ' ' << st + 1 << ' ' << dr + 1;
    out.close();
    return 0;
}