Pagini recente » Cod sursa (job #2133573) | Cod sursa (job #636918) | Cod sursa (job #887244) | Cod sursa (job #853697) | Cod sursa (job #2707383)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("secv2.in");
ofstream fout("secv2.out");
int sum[50001];
int main() {
int n, k, nr, sum_max, sum_min = 0, pos_min = 0, i_pos_min = 0;
fin >> n >> k;
int pos_1 = 1, pos_2 = k;
for (int i = 1; i <= n; ++i) {
fin >> nr;
sum[i] += sum[i - 1] + nr;
}
for (int i = 1; i <= n; ++i) {
if (i <= k) {
sum_max = sum[k];
} else if (sum[i] - sum_min > sum_max) {
sum_max = sum[i] - sum_min;
pos_1 = pos_min + 1;
pos_2 = i;
}
if (i - i_pos_min == k) {
i_pos_min++;
if (sum[i_pos_min] < sum_min) {
sum_min = sum[i_pos_min];
pos_min = i_pos_min;
}
}
}
fout << pos_1 << ' ' << pos_2 << ' ' << sum_max;
return 0;
}