Cod sursa(job #2051326)

Utilizator vladm98Munteanu Vlad vladm98 Data 28 octombrie 2017 19:45:25
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.51 kb
#include <bits/stdc++.h>

using namespace std;

int main(int argc, char const *argv[])
{
	ifstream fin ("ssm.in");
	ofstream fout ("ssm.out");
	int n, maxim = -1090, left = 0, right = 1, currentSum = 0, st = 0;
	fin >> n;
	for (int i = 1; i<=n; ++i)
	{
		int x;
		fin >> x;
		currentSum += x;
		if (currentSum > maxim || maxim == -1090)
		{
			left = st;
			right = i;
			maxim = currentSum;
		}
		if (currentSum < 0)
		{
			currentSum = 0;
			st = i;
		}
	}
	fout << maxim << ' ' << left+1 << ' ' << right;
	return 0;
}