Cod sursa(job #2714867)

Utilizator DragosC1Dragos DragosC1 Data 2 martie 2021 16:56:17
Problema Secventa 2 Scor 40
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.64 kb
#include <fstream>
#include <deque>
using namespace std;

int n, k, st, dr;
int a[50001];
const int Inf = 2e9;
int smax = -Inf;

void read() {
	int i;
	ifstream f("secv2.in");
	f >> n >> k;
	for (i = 1; i <= n; i++)
		f >> a[i];
	f.close();
}

void solve() {
	int i, init;
	int S = 0;
	for (i = 1; i <= n; i++) {
		S += a[i];
		if (S < 0) {
			init = i + 1;
			S = 0;
		}
		if (S > smax && i - init >= k) {
			smax = S;
			st = init;
			dr = i;
		}
	}
}

void output() {
	ofstream g("secv2.out");
	g << st << ' ' << dr << ' ' << smax;
	g.close();
}

int main() {
	read();
	solve();
	output();
	return 0;
}