Cod sursa(job #1382303)

Utilizator tudoras8tudoras8 tudoras8 Data 8 martie 2015 19:58:20
Problema Subsecventa de suma maxima Scor 5
Compilator cpp Status done
Runda Arhiva educationala Marime 0.69 kb
#include <iostream>

using namespace std;

int main()
{
    freopen("ssm.in", "r", stdin);
    freopen("ssm.out", "w", stdout);
    int n, s[599999], sum[599999];
    cin >> n;
    for (int i = 0; i < n; i++) {
        cin >> s[i];
        if (i == 0)
            sum[0] = s[0];
        else {
            sum[i] = sum[i - 1] + s[i];
        }
    }
    int maxsum = -1, mi = 0, mj = 0;
    for (int i = 0; i < n - 1; i++) {
        for (int j = i + 1; j < n; j++) {
            if (sum[j] - sum[i - 1] > maxsum) {
                maxsum = sum[j] - sum[i];
                mi = i;
                mj = j;
            }
        }
    }
    cout << maxsum << ' ' << mi + 1 <<  ' ' << mj + 1;
    return 0;
}