Cod sursa(job #2674481)

Utilizator teofilotopeniTeofil teofilotopeni Data 19 noiembrie 2020 12:02:49
Problema Secventa 2 Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.67 kb
#include <iostream>
#include <fstream>
using namespace std;

// Secv2


int main() {
	freopen("secv2.in", "r", stdin);
	freopen("secv2.out", "w", stdout);

	int n, m, i = 0;
	int surplus = 0, act = 0, start = 1;
	int v[50010] = { 0 };
	scanf("%d %d", &n, &m);
	while (++i <= m) {
		scanf("%d", &v[i]);
		act += v[i];
	}
	int maxim = act, s = 1, f = m;

	i--;
	while (++i <= n) {
		scanf("%d", &v[i]);
		act += v[i];
		surplus += v[i - m];
		if (act - surplus > act) {
			act -= surplus;
			start = i - m + 1;
			surplus = 0;
		}
		if (act > maxim) {
			maxim = act;
			s = start;
			f = i;
		}
	}

	printf("%d %d %d", s, f, maxim);
	return 0;
}