Cod sursa(job #1725235)

Utilizator DeanWinchesterdean winchester DeanWinchester Data 5 iulie 2016 11:35:52
Problema Subsecventa de suma maxima Scor 45
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
#include<iostream>
using namespace std;
int n,v[100005],m,s,d,x,i,j,l=1,smax,st,dr,st1;
bool ok;
int main ()
{
    freopen("ssm.in","r",stdin);
    freopen("ssm.out","w",stdout);

    cin>>n;
    for(i=1;i<=n;i++){
        cin>>v[i];
    }
    s=v[1]; smax=v[1];
    st = st1 = 1;
    dr=1;
    for(i=2;i<=n;i++){
        if(s+v[i]>=v[i]){
            s+=v[i];
        }
        else{
            s=v[i];
            st=i;
        }
        if(s > smax){
            smax=s;
            dr=i;
            st1=st;
        }
    }
    cout<< smax<<" "<<st1<<" "<<dr;
    return 0;
}