Cod sursa(job #2654564)

Utilizator dream3rDavid Pop dream3r Data 1 octombrie 2020 16:54:41
Problema Subsecventa de suma maxima Scor 95
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.69 kb
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <fstream>
#include <string>
#include <vector>
#include <climits>
#include <algorithm>
#define max(a,b) a > b ? a : b
#define ll long long int
using namespace std;
ifstream f("ssm.in");
ofstream o("ssm.out");



int main()
{
	int x;
	int n;
	f >> n;
	int ans = INT_MIN;
	int sum = 0;
	int start = 1, stop = 1;
	int anterior = INT_MIN;
	int seqSum = 0;
	int l = 1;
	for (size_t i = 1; i <= n; i++)
	{
		f >> x;
		sum += x;
		if (sum > seqSum)
		{
			seqSum = sum;
			start = l;
			stop = i;
		}
		if (sum < 0)
		{
			sum = 0;
			l = i + 1;
		}
	}

	o << seqSum << " " << start << " " << stop;

}