Cod sursa(job #643685)

Utilizator SteveStefan Eniceicu Steve Data 4 decembrie 2011 11:14:56
Problema Secventa 2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.65 kb
#include <fstream>

using namespace std;

int main ()
{
	int maxim, i, j, k, n, S1 = 0, Sprime = 0, c1 = 0, c2, curent = 0;
	int v[55000];
	ifstream fin ("secv2.in");
	fin >> n >> k;
	for (i = 0; i < k; i++)
	{
		fin >> v[i];
		S1 += v[i];
	}
	maxim = S1;
	c2 = k - 1;
	for (i = k; i < n; i++)
	{
		fin >> v[i];
		S1 += v[i];
		Sprime += v[i - k];
		if (Sprime <= 0)
		{
			S1 -= Sprime;
			Sprime = 0;
			curent = i - k + 1;
		}
		if (S1 > maxim)
		{
			maxim = S1;
			c1 = curent;
			c2 = i;
		}
	}
	fin.close ();
	ofstream fout ("secv2.out");
	fout << c1 + 1 << " " << c2 + 1 << " " << maxim;
	fout.close ();
	return 0;
}