Pagini recente » Cod sursa (job #520394) | Cod sursa (job #760398) | Cod sursa (job #1688711) | Cod sursa (job #372187) | Cod sursa (job #3128452)
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;
int main() {
ifstream f("deque.in");
int n, k, sum=0, size=0;
int v2[100001];
f>>n >>k;
int v[100001];
for (int i = 0; i < n; i++) {
f >> v[i];
}
for (int i = 0; i < n; i++) {
if (size > 0 && v2[0] <= i - k) {
size--;
for (int j = 0; j <size; j++) {
v2[j] = v2[j + 1];
}
}
while (size > 0 && v[v2[size - 1]] >= v[i]) {
size--;
}
v2[size] = i;
size++;
if (i>= k - 1) {
sum+= v[v2[0]];
}
}
ofstream g("deque.out");
g << sum;
f.close();
g.close();
return 0;
}