Cod sursa(job #530091)

Utilizator feelshiftFeelshift feelshift Data 6 februarie 2011 20:20:26
Problema Subsecventa de suma maxima Scor 95
Compilator cpp Status done
Runda Arhiva educationala Marime 0.63 kb
// http://infoarena.ro/problema/ssm
#include <fstream>
using namespace std;

ifstream in("ssm.in");
ofstream out("ssm.out");

int main() {
	int lenght,number;
	int sum = -1,bestSum = 0;
	int left,tempLeft,right;

	in >> lenght;
	for(int currentPosition=1;currentPosition<=lenght;currentPosition++) {
		in >> number;

		if(sum < 0) {
			sum = number;
			tempLeft = currentPosition;
		}
		else
			sum = sum + number;

		if(bestSum < sum) {
			bestSum = sum;
			left = tempLeft;
			right = currentPosition;
		}
	}

	out << bestSum << " " << left << " " << right;

	in.close();
	out.close();

	return (0);
}