Pagini recente » Cod sursa (job #1211228) | Cod sursa (job #1899682) | Cod sursa (job #1702354) | Cod sursa (job #2628611) | Cod sursa (job #2640739)
#include <bits/stdc++.h>
#define ll long long
using namespace std;
ifstream fin("secv2.in");
ofstream fout("secv2.out");
int n, v[50001], k, maxSum = INT_MIN, leftB, rightB;
int main() {
fin >> n >> k;
for (int i = 1; i <= n; i++)
fin >> v[i];
int start = 1, currSum = 0;
for (int i = 1; i <= n; i++) {
currSum += v[i];
if (i < k)
continue;
if (currSum > maxSum)
maxSum = currSum, leftB = start, rightB = i;
while (i + 1 - start > k && (v[i] >= currSum || v[start] <= 0))
currSum -= v[start++];
if (currSum > maxSum)
maxSum = currSum, leftB = start, rightB = i;
}
fout << leftB << " " << rightB << " " << maxSum;
return 0;
}