Cod sursa(job #900235)

Utilizator vgabi94Vaduva Gabriel vgabi94 Data 28 februarie 2013 18:25:07
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include <fstream>
using namespace std;

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

const int maxn = 6000001;

int S[maxn], N;

int main()
{
    in >> N;
    int sum = 0, idx = 1, beg, end, bestSum = -int(2e9);
    for (int i = 1; i <= N; i++) in >> S[i];
    for (int i = 1; i <= N; i++)
    {
        if (sum < 0)
        {
            sum = S[i]; idx = i;
        }
        else sum += S[i];
        if (bestSum < sum)
        {
            bestSum = sum; beg = idx; end = i;
        }
    }
    out << bestSum << ' ' << beg << ' ' << end;
    return 0;
}