Cod sursa(job #2722694)

Utilizator FrostfireMagirescu Tudor Frostfire Data 13 martie 2021 10:52:19
Problema Subsecventa de suma maxima Scor 95
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.54 kb
#include <iostream>
#include <fstream>
#define inf 2000000000
#define f first
#define s second

using namespace std;

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

int n;
pair <int, int> poz;

int main()
{
	fin >> n;
	int ans = -inf, curr = 0, pi = 0;
	for(int i=1; i<=n; i++)
		{	int x;
			fin >> x;
			if(x + curr > x)
				curr += x;
			else
				{	curr = x;
					pi = i;
				}
			if(curr > ans)
				{	ans = curr;
					poz = {pi, i};
				}
		}
	fout << ans << ' ' << poz.f << ' ' << poz.s << '\n';
	return 0;
}