Cod sursa(job #656827)

Utilizator Coman95coman cosmin Coman95 Data 5 ianuarie 2012 13:06:29
Problema Subsecventa de suma maxima Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.56 kb
#include<fstream>
#includ<algoritm>

using namespace std;
ifstream fin("ssm.in");
ofstream fout(ssm.out);

const int MAXN = 7000005

int s[MAXN], n;

int main()
{
	fin >> n;
	for( int i = 1; i <= n; i++ )
		fin >> s[i];
	int Summ = -int(2e9), min = 0, idx, beg, end;
	for( int i = 1; i <= n; i++ )
	{
		s[i] += s[i-1];
		if ( Summ < s[i] - min )
		{
			Summ = s[i] - min;
			beg = idx + 1;
			end = i;
		}
		if( min > s[i] )
			min = s[i], idx = i;
	}
	fout << Summ << " " << beg << " " << end;
	fin.close();
	fout.close();
	return 0;
}