Pagini recente » Cod sursa (job #1004682) | Cod sursa (job #2500139) | Cod sursa (job #2954700) | Cod sursa (job #2106282) | Cod sursa (job #2801240)
#include <bits/stdc++.h>
using namespace std;
int main() {
ifstream fin("secv2.in");
ofstream fout("secv2.out");
fin.tie(0);
std::ios_base::sync_with_stdio(0);
const int MAX_N = 50000;
int n, k, partialSums[MAX_N], v[MAX_N];
fin >> n >> k;
partialSums[0] = 0;
for (int i = 0; i < n; ++i) {
fin >> v[i];
partialSums[i + 1] = partialSums[i] + v[i];
}
int ans = partialSums[n], finish = n, minElementPoz = 0, start = 1;
for (int i = k; i <= n; ++i) {
if (partialSums[minElementPoz] > partialSums[i - k]) {
minElementPoz = i - k;
}
if (ans < partialSums[i] - partialSums[minElementPoz]) {
ans = partialSums[i] - partialSums[minElementPoz];
finish = i;
start = minElementPoz + 1;
}
}
fout << start << ' ' << finish << ' ' << ans;
}