Cod sursa(job #529863)

Utilizator tudgal1001Profir Tudor tudgal1001 Data 6 februarie 2011 13:46:43
Problema Subsecventa de suma maxima Scor 80
Compilator cpp Status done
Runda Arhiva educationala Marime 0.48 kb
#include<cstdio>
using namespace std;

int a[6000005],s[60000005];

int main ()
{
	int n,max=0,min,sol1,sol2,inc,i;
	freopen("ssm.in","r",stdin);
	freopen("ssm.out","w",stdout);
	scanf("%d",&n);
	for (i=1; i<=n; i++)
	{
		scanf("%d",&a[i]);
		s[i]=s[i-1]+a[i];
	}
	min=s[1]; inc=1;
	for (i=2; i<=n; i++)
	{
		if (s[i]-min>max) 
		{
			max=s[i]-min;
			sol1=inc; sol2=i;
		}
		if (s[i]<min) { min=s[i]; inc=i+1; }
	}
	printf("%d %d %d",max,sol1,sol2);
	return 0;
}