Cod sursa(job #1428885)

Utilizator stef93Stefan Gilca stef93 Data 5 mai 2015 11:27:24
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.65 kb
#include <cstdio>
#include <climits>

using namespace std;

int best[6000003];
int max, inds, indsa, inde, sum;

int maxim(int a, int b)
{
	return a > b ? a: b;
}
int main()
{
	int n, i;

	freopen("ssm.in", "r", stdin);
	freopen("ssm.out", "w", stdout);

	scanf("%d", &n);

	i = 0;
	while(i < n)
	{
		scanf("%d" , &best[i]);
		i++;
	}

	max = INT_MIN;
	sum = 0;
	for(i = 0 ; i < n; i++)
	{
		if(sum < 0)
		{
			sum = best[i];
			indsa = i;
		}
		else
		{
			sum += best[i];
		}
		if(sum > max)
		{
			max = sum;
			inde = i;
			inds = indsa;
		}

	}

	printf("%d %d %d\n", max, inds + 1, inde + 1);

	return 0;
}