Cod sursa(job #843397)

Utilizator arrayAnghel Mihai array Data 27 decembrie 2012 22:16:02
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.49 kb
#include <iostream>
#include <fstream>
using namespace std;

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

int N;
int cit, s, sol, p1, p2, mn, pozmin;
int main()
{
	mn = (1 << 30);
	sol = -mn;
	fin >> N;
	for (int i = 1; i <= N; ++i)
	{
		if (mn > s)
		{
			mn = s;
			pozmin = i;
		}
		fin >> cit;
		s = s + cit;
		if (sol < s - mn)
		{
			sol = s - mn;
			p1 = pozmin;
			p2 = i;
		}
	}
	fout << sol << ' ' << p1 << ' ' << p2 << '\n';
	fout.close();
	return 0;
}