Cod sursa(job #3166004)

Utilizator juincPopescu Marian juinc Data 7 noiembrie 2023 13:45:53
Problema Subsecventa de suma maxima Scor 85
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.48 kb
#include <fstream>
#include <climits>

int main() {
	std::ifstream fin("ssm.in");
	std::ofstream fout("ssm.out");

	long long n, elem, best = -9223372036854775807, sum = 0, beg_idx, end_idx;
	
	fin >> n;

	for (long long i = 1; i <= n; i++) {
		fin >> elem;

		if (sum < 0) {
			sum = elem;
			beg_idx = i;
		}
		else
			sum += elem;

		if (best < sum) {
			best = sum;
			end_idx = i;
		}
	}

	fout << best << " " << beg_idx << " " << end_idx;
 
	return 0;
}