Cod sursa(job #1728756)

Utilizator MihneaGhiraMihnea MihneaGhira Data 13 iulie 2016 16:39:43
Problema Subsecventa de suma maxima Scor 100
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 N,st,dr,maxim,maximst,maximdr,i,p;
int d[6000010];
int main(){
    fin>>N;
    d[0]=maxim=-2000000000;
    st=1;
    dr=1;
    for(i=1;i<=N;i++){
        fin>>p;
        if(d[i-1]+p>=p){
            dr++;
            d[i]=d[i-1]+p;
        }
        else{
            d[i]=p;
            st=i;
            dr=i;
        }
        if(maxim<d[i]){
            maxim=d[i];
            maximst=st;
            maximdr=dr;
        }
    }
    fout<<maxim<<" "<<maximst<<" "<<maximdr;
    return 0;
}