Cod sursa(job #2065228)

Utilizator Andreea62389Andreea Tebrean Andreea62389 Data 13 noiembrie 2017 16:52:50
Problema Subsecventa de suma maxima Scor 95
Compilator cpp Status done
Runda Arhiva educationala Marime 0.68 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int v[6000001];
int main()
{
    int n, i, x, j, nr=0, maxim=0, S=0, a=1, b=0;
    fin >> n;
    for(i=1; i<=n; i++)
    {
        fin >> x;
        S=S+x;
        nr++;
        if(S<0)
        {
            S=0;
            nr=0;
        }
        if(S>maxim)
        {
            maxim=S;
            b=i;
            a=i-nr+1;
        }
        if(S==maxim)
        {
            if(i-nr+1<a)
            {
                a=i-nr+1;
                b=i;
            }
        }
    }
    fout << maxim << " " << a << " " << b;
    return 0;
}