Pagini recente » Cod sursa (job #2527222) | Cod sursa (job #3275154) | Cod sursa (job #1910478) | Cod sursa (job #3148948) | Cod sursa (job #2552195)
constexpr int lmax = (int)5e6+10L;
#include <iostream>
#include <fstream>
#include <vector>
#include <deque>
using namespace std;
int n, k;
int v[lmax];
deque<int> dq;
int main() {
fstream fi("deque.in");
fstream fo("deque.out");
long long s = 0;
fi >> n >> k;
for (int i = 1; i <= n; ++i)
fi >> v[i];
#define bak dq.back()
#define frn dq.front()
#define meow dq.pop_back()
#define bark dq.pop_front()
for (int i = 1; i <= n; ++i) {
while (!dq.empty() && v[bak] > v[i]) meow;
dq.push_back(i);
if (frn == i-k) bark;
if (i >= k) s += v[frn];
}
fo << s;
fo.close();
fi.close();
return 0;
}