Cod sursa(job #1781934)

Utilizator Mihai_PredaPreda Mihai Dragos Mihai_Preda Data 17 octombrie 2016 17:07:57
Problema Subsecventa de suma maxima Scor 80
Compilator cpp Status done
Runda Arhiva educationala Marime 0.64 kb
#include <iostream>
#include <fstream>

using namespace std;

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

int n;

int v[6000001];
const int INF = (1 << 31);

int main()
{
    in >> n;
    for(int i = 1; i <= n; ++i)
        in >> v[i];

    int mx = -INF;
    int s = 0;
    int inc, sf;
    for(int i = 1; i <= n; ++i)
    {
        if(s > 0)
        {
            s += v[i];
        }
        else
        {
            s = v[i];
            inc = i;
        }
        if(s > mx)
        {
            mx = s;
            sf = i;
        }
    }
    out << mx << " " << inc << " " << sf;
    return 0;
}