Cod sursa(job #1692099)

Utilizator robx12lnLinca Robert robx12ln Data 20 aprilie 2016 09:26:07
Problema Subsecventa de suma maxima Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.6 kb
#include<fstream>
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int x, n, p, u, st, dr;
long long s, maxim;
int main(){
    fin >> n;
    fin >> x;
    maxim = x;
    p = 1;
    u = 1;
    st = dr = 1;
    s = x;
    for( int i = 2; i <= n; i++ ){
        fin >> x;
        s += x;
        u++;
        if( s < 0 ){
            p = u + 1;
            u++;
            s = 0;
        }
        if( maxim < s ){
            maxim = s;
            st = p;
            dr = u;
        }
    }
    fout << maxim << " " << st << " " << dr - 1;
    return 0;
}