Cod sursa(job #1738404)

Utilizator ionanghelinaIonut Anghelina ionanghelina Data 6 august 2016 17:17:43
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.64 kb
#include<bits/stdc++.h>
using namespace std;
long long *s;
int n;
inline long long max(long long a,long long b)
{
    return a<b?b:a;
}
long long maxim=LLONG_MIN,m,x;
int ls,ld,imin;
int main()
{
    freopen("ssm.in","r",stdin);
    freopen("ssm.out","w",stdout);
    scanf("%d",&n);
    s=new long long [n+5];
    s[0]=0;
    m=0;
    for(int i=1;i<=n;i++)
    {
        scanf("%lld",&x);
        s[i]=s[i-1]+x;
        if ((s[i]-m)>maxim)
        {
            maxim=s[i]-m;
            ls=imin+1;
            ld=i;
        }
        if (s[i]<m) m=s[i],imin=i;
    }
    printf("%lld %d %d\n",maxim,ls,ld);
    return 0;
}