Cod sursa(job #269318)

Utilizator stinkyStinky si Grasa stinky Data 2 martie 2009 19:37:22
Problema Subsecventa de suma maxima Scor 90
Compilator cpp Status done
Runda Arhiva educationala Marime 0.44 kb
//cel mult 5000 de numere cu valori intre -1000 si 1000
#include<stdio.h>

void suma()
{
	long s=0,max=(1<<32);
	int x,a,b,p=1,n;
	scanf("%d",&n);
	for(int i=1;i<=n;++i)
	{
		scanf("%d",&x);
		s+=x;
		if(s>max)
		{
			max=s;
			a=p;
			b=i;
		}
		if(s<=0)
		{
			s=0;
			p=i+1;
		}
	}
	printf("%ld %d %d\n",max,a,b);
}

int main()
{
	freopen("ssm.in","r",stdin);
	freopen("ssm.out","w",stdout);
	suma();
	return 0;
}