Cod sursa(job #2040250)

Utilizator robuvedVictor Robu robuved Data 15 octombrie 2017 15:49:46
Problema Subsecventa de suma maxima Scor 95
Compilator cpp Status done
Runda Arhiva educationala Marime 0.53 kb
#include <fstream>
#include <vector>
#include <climits>
using namespace std;
ifstream in("ssm.in");
ofstream out("ssm.out");

int main()
{
	int N;
	int sum = 0;
	int max_sum  = - INT_MAX;
	in >> N;
	int start = 0, max_start, max_end;
	for (int i = 0; i < N; i++)
	{
		int x;
		in >> x;
		sum += x;
		if (sum < 0)
		{
			start = i + 1;
			sum = 0;
		}
		else if (sum > max_sum)
		{
			max_sum = sum;
			max_start = start;
			max_end = i;
		}
	}
	out << max_sum << ' ' << max_start + 1<< ' ' << max_end + 1;
}