Cod sursa(job #1515317)

Utilizator meriniucrMeriniuc Razvan- Dumitru meriniucr Data 1 noiembrie 2015 14:33:32
Problema Subsecventa de suma maxima Scor 95
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
//http://www.infoarena.ro/problema/ssm

#include <fstream>

using namespace std;

const long long INF = 1UL << 40;

int		main()
{
	ifstream mama("ssm.in");
	ofstream tata("ssm.out");

	int N;
	long maxim;
	int s;
	int n;
	int x;
	int y;
	int imax;
	int jmax;

	mama >> N;
	N += 1;
	maxim = -INF;
	s = 0;
	x = 1;
	y = 1;
	for (int i = 1; i < N; i += 1)
	{
		mama >> n;
		if (s + n >= n)
		{
			s += n;
			++y;
		}
		else
		{
			s = n;
			x = i;
			y = i;
		}
		if (s > maxim)
		{
			maxim = s;
			imax = x;
			jmax = y;
		}
	}
	tata << maxim << " " << imax << " " << jmax; 
	return 0;
}