Cod sursa(job #3305311)

Utilizator AndreiRares1801Andrei Acatrini AndreiRares1801 Data 31 iulie 2025 16:48:37
Problema Subsecventa de suma maxima Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.48 kb
#include <iostream>
#include <fstream>
#include <climits>
using namespace std;

#ifdef LOCAL
#define fin cin
#define fout cout
#else
ifstream fin("ssm.in");
ofstream fout("ssm.out");
#endif

int main() {
	int n, a, sp=0, sp_min=0, pos_sp_min=0, smax=-2e9, l=1, r=1;
	fin >> n;
	for (int i=1; i<=n; i++) {
		fin >> a;
		sp += a;
		if (sp - sp_min > smax) smax = sp - sp_min, l = pos_sp_min + 1, r = i;
		if (sp < sp_min) sp_min = sp, pos_sp_min = i;
	}
	fout << smax << " " << l << " " << r;
}