Cod sursa(job #2186111)

Utilizator rnqftwcalina florin daniel rnqftw Data 25 martie 2018 12:47:17
Problema Subsecventa de suma maxima Scor 55
Compilator cpp Status done
Runda Arhiva educationala Marime 0.64 kb
#include<bits/stdc++.h>

using namespace std;

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

int best[6000000],a[6000000];
int main(){
    int n;
    int i;
    int beg,end1,it;
    in>>n;
    for (i = 1; i <= n; ++ i)
            in>>a[i];
    int bestSum = a[1];

    for (i = 1; i <= n; ++ i) {
        if (best[i] < best[i-1] + a[i]){
            best[i] = best[i-1] + a[i];

        }
        else{
            best[i]=a[i];
            it=i;
        }
        if (bestSum < best[i]){
            bestSum = best[i];
            beg=it;
            end1=i;
        }
    }

    out<<bestSum<<" "<<beg<<" "<<end1;
}