Cod sursa(job #2806321)

Utilizator bumblebeeGeorge Bondar bumblebee Data 22 noiembrie 2021 15:30:39
Problema Subsecventa de suma maxima Scor 90
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.54 kb
#include <fstream>
#include <climits>
using namespace std;

ifstream fin("ssm.in");
ofstream fout("ssm.out");

int main() {
	int n, best = 0, start_idx = 1, end_idx = 1, maxBest = INT_MIN, value;
	fin >> n;
	for (int i = 1; i <= n; ++i) {
		fin >> value;
		if (value + best >= value) {
			best += value;
		} else {
			if (best < value) {
				best = value;
				start_idx = end_idx = i;
			}
		}
		if (best > maxBest) {
			maxBest = best;
			end_idx = i;
		}
	}
	fout << maxBest << " " << start_idx << " " << end_idx;
	return 0;
}