Cod sursa(job #1148992)

Utilizator Andreiii500Andrei Puiu Andreiii500 Data 21 martie 2014 13:21:14
Problema Subsecventa de suma maxima Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.62 kb
#include<limits.h>
#include<stdio.h>
using namespace std;

// 6000005
#define dim 6000005

int main()
{
	freopen("ssm.in", "r", stdin);
	freopen("ssm.out", "w", stdout);
	
	int n,i,x,su,smax,j,st,dr;
	//int v[dim];
	int s[dim];
	
	scanf("%d", &n);
	
	s[0]=0;
	smax=INT_MIN;
	for(i=1;i<=n;++i)
	{
		scanf("%d", &x);
		//printf("%d ", x);
		s[i]=s[i-1]+x;
		for(j=i;j>=1;--j)
		{
			su=s[i]-s[j-1];
			if(su>smax)
			{
				smax=su;
				st=j;
				dr=i;
			}
		}
	}
	/*printf("\n");
	for(i=1;i<=n;++i) printf("%d ", s[i]);
	printf("\n");*/
	
	printf("%d %d %d", smax, st, dr);
	
	
	
	return 0;
}