Cod sursa(job #1149220)

Utilizator apecstudor popescu apecs Data 21 martie 2014 15:40:13
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.63 kb
#include<limits.h>
#include<stdio.h>
#include<fstream>
using namespace std;
int v[6000001],s[6000001],n;
int main () {
    freopen("ssm.in","r",stdin);
    freopen("ssm.out","w",stdout);
    int i,sc,smax=INT_MIN,start,end,x,smin=0,pmin=0;
    scanf("%d",&n);
    for(i=1;i<=n;i++){
        scanf("%d",&x);
        s[i]=s[i-1]+x;
    }
    for(i=1;i<=n;i++){
        sc=s[i]-smin;
        if(sc>smax){
            smax=sc;
            start=pmin+1;
            end=i;
        }
        if(s[i]<smin){
            smin=s[i];
            pmin=i;
        }
    }
    printf("%d %d %d",smax,start,end);
    return 0;
}