Cod sursa(job #2759044)

Utilizator DariusMDarius Feher DariusM Data 14 iunie 2021 21:40:32
Problema Subsecventa de suma maxima Scor 95
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.48 kb
#include <iostream>
#include <fstream>
using namespace std;

ifstream f("ssm.in");
ofstream g("ssm.out");

int main() {
	int n;
	f >> n;
	int start, maxi_start, maxi_end, nr, sum = 0, maxi = -int(2e9);
	for (int i = 1; i <= n; i++) {
		f >> nr;
		if (sum <= 0) {
			start = i;
			sum = nr;
		} else {
			sum += nr;
		}
		if (sum > maxi) {
			maxi_start = start;
			maxi_end = i;
			maxi = sum;
		}
	}
	g << maxi << " " << maxi_start << " " << maxi_end;
	
	f.close();
	g.close();   
	return 0;
}