Cod sursa(job #1895149)

Utilizator TamasFlorin96Tamas Florin TamasFlorin96 Data 27 februarie 2017 20:15:14
Problema Subsecventa de suma maxima Scor 85
Compilator cpp Status done
Runda Arhiva educationala Marime 0.59 kb
#include <iostream>
#include <algorithm>
#include <vector>
#include <fstream>

int main(void) {
	std::ifstream in("ssm.in");
	int n;
	in >> n;

	int maxSum = std::numeric_limits<int>().min();
	int currSum = 0;
	int start, end;
	int value;

	for (int i = 0; i < n; i++) {
		in >> value;
		if (currSum < 0) {
			currSum = value;
			start = i;
		}
		else currSum += value;

		if (currSum > maxSum) {
			maxSum = currSum;
			end = i;
		}
	}

	in.close();

	std::ofstream out("ssm.out");

	out << maxSum << " " << start + 1 << " " << end + 1;

	out.close();

	return 0;

}