Cod sursa(job #2794989)

Utilizator mihnea03Ciocioiu Mihnea mihnea03 Data 5 noiembrie 2021 20:03:30
Problema Subsecventa de suma maxima Scor 90
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.61 kb
#include <fstream>
#include <climits>
#define dim 6000010
using namespace std;
int a[dim];
int best[dim];
int i,n,k,x,st,dr,sol;

int main() {
    ifstream fin("ssm.in");
    ofstream fout("ssm.out");
    fin>>n;
    for (i=1;i<=n;i++) {
        fin>>a[i];
    }
    for (i=1;i<=n;i++) {
        if (a[i]>best[i-1]+a[i]) {
            best[i]=a[i];
            x=i;
        }
        else {
            best[i]=best[i-1]+a[i];
        }
        if (best[i]>sol) {
            sol=best[i];
            st=x;
            dr=i;
        }
    }
    fout<<sol<<" "<<st<<" "<<dr;
    return 0;
}