Cod sursa(job #2199075)

Utilizator RaduVFVintila Radu-Florian RaduVF Data 26 aprilie 2018 17:06:32
Problema Subsecventa de suma maxima Scor 95
Compilator cpp Status done
Runda Arhiva educationala Marime 0.66 kb
#include <bits/stdc++.h>
#define neginf (1<<31)+1
#define NMAX 6000005
using namespace std;

ifstream fin("ssm.in");
ofstream fout("ssm.out");
int n, minim, j;
int maxSum, st, dr;
int V[NMAX], sol[NMAX];

void SumCalculate() {
    maxSum=neginf;
    for(int i=1; i<=n; ++i) {
        V[i]+=V[i-1];
        if(minim>V[i]) {
            minim=V[i];
            j=i;
        }
        if(maxSum<V[i]-minim) {
            maxSum=V[i]-minim;
            st=j+1;
            dr=i;
        }
    }
}

int main()
{
    fin>>n;
    for(int i=1; i<=n; ++i)
        fin>>V[i];
    SumCalculate();
    fout<<maxSum<<' '<<st<<' '<<dr;
    return 0;
}