Cod sursa(job #1238597)

Utilizator Vally77FMI Calinescu Valentin Gelu Vally77 Data 7 octombrie 2014 11:43:48
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.68 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream ka("ssm.in");
ofstream ki("ssm.out");
int n, x;
int best, ant, start, finish, start_bun, finish_bun;
long long maxim = -(1 << 30);

int main()
{
    ka >> n;
    best = -1;
    for(int i = 1; i <= n; i++)
    {
        ka >> x;
        if(x > best + x)
        {
            best = x;
            start = i;
        }
        else
            best += x;
        finish = i;
        if(best > maxim)
        {
            maxim = best;
            start_bun = start;
            finish_bun = finish;
        }
        ant = best;
    }
    ki << maxim << " " << start_bun << " " << finish_bun;
}