Cod sursa(job #556759)

Utilizator giuliastefGiulia Stef giuliastef Data 16 martie 2011 12:08:21
Problema Subsecventa de suma maxima Scor 85
Compilator cpp Status done
Runda Arhiva educationala Marime 0.52 kb
// subsecventa de suma maxima

#include <cstdio>
#define INF 1<<30
using namespace std;
int main()
{
    int i,n,x,s,start,finish,smax,startmax,finishmax;
    freopen("ssm.in","r",stdin);
    freopen("ssm.out","w",stdout);
    scanf("%d",&n);
    s=0;smax=-INF;
    for(i=1;i<=n;i++)
    {
     scanf("%d",&x);
     if(s+x<x) s=x, start=i, finish=i;
     else
      s=s+x, finish++;
     if(smax<s) smax=s, startmax=start, finishmax=finish;
    }
    printf("%d %d %d",smax,startmax,finishmax);
    return 0;
}