Cod sursa(job #723776)

Utilizator tvararuVararu Theodor tvararu Data 25 martie 2012 20:24:13
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;

int main (int argc, char const *argv[])
{
	
	ifstream in ("ssm.in");
	int n; in >> n;
	int bestSum = -0x7fffffff, sum = 0, begin, end, idx;
	for (int i = 1; i <= n; i++)
	{
		int numar; in >> numar;
		
		if (sum < 0)
		{
			sum = numar;
			idx = i;
		}
		else
			sum += numar;
		
		if (bestSum < sum)
		{
			bestSum = sum;
			begin = idx;
			end = i;
		}
	}
	in.close ();
	
	ofstream out ("ssm.out");
	out << bestSum << ' ' << begin << ' ' << end << '\n';
	out.close ();
	
	return 0;
}