Cod sursa(job #348552)

Utilizator Binary_FireFlorin Pogocsan Binary_Fire Data 16 septembrie 2009 00:32:49
Problema Subsecventa de suma maxima Scor 95
Compilator cpp Status done
Runda Arhiva educationala Marime 0.51 kb
#include <iostream>
#include <fstream>

using namespace std;

#define fin  "ssm.in"
#define fout "ssm.out"

int main()
{
	int i, N, val, sum = 0, mins = 0, st = 0, dr = 0, best = -(1<<31);
	int posm = 0, tmp;

	ifstream f1(fin);
	ofstream f2(fout);

	f1 >> N;
	for ( i = 1; i <= N; ++i )
	{
		f1 >> val;
		sum += val;
		if ( (tmp = sum - mins) > best )
			best = tmp, st = posm + 1, dr = i;
		if ( sum <= mins ) mins = sum, posm = i;
	}
	f2 << best << " " << st << " " << dr << endl;

	return 0;
}