Cod sursa(job #403915)

Utilizator cameleonGeorgescu Dan cameleon Data 25 februarie 2010 16:10:53
Problema Subsecventa de suma maxima Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.5 kb
#include<stdio.h>
int n,s,a,i1,j1,i,imax,jmax,smax;
int main()
{
	freopen("ssm.in","r",stdin);
	freopen("ssm.out","w",stdout);
	scanf("%d",&n);i1=1;
	s=0;
	for(i=1;i<=n;i++)
	{
		scanf("%d",&a);
		if(s+a>a)
		{
			s+=a;j1++;
		
		}
		else
		{
		if(s>smax)
			{
			 smax=s;
			 imax=i1;jmax=j1;
			}
		 else
			 if(s==smax)
			 {
				 if(j1-i1 < jmax-imax)
				 {
					 imax=i1;jmax=j1;
				 }
			 }
		s=a;i1=i;j1=i;
		}
	}
		printf("%d %d %d",smax,imax,jmax);
		return 0;
	
}