Pagini recente » Cod sursa (job #1826481) | Cod sursa (job #883749) | Cod sursa (job #1472293) | Cod sursa (job #2223715) | Cod sursa (job #2979591)
/// [A][M][C][B][N] ///
#include <bits/stdc++.h>
const int mod = 1e9 + 7;
const int inf = 0x3f3f3f3f;
const char sp = ' ', nl = '\n';
using namespace std;
ifstream fin("deque.in");
ofstream fout("deque.out");
int main() {
ios::sync_with_stdio(0);
cin.tie(0);
int n, k;
fin >> n >> k;
deque<pair<int, int>> dq;
dq.push_back({ 0, 0 });
for (int i = 1; i < k; ++i) {
int x;
fin >> x;
dq.push_back({ i, x });
}
long long ans = 0;
for (int i = k; i <= n; ++i) {
int x;
fin >> x;
while (dq.size() && i - dq.front().first >= k) {
dq.pop_front();
}
while (dq.size() && dq.back().second > x) {
dq.pop_back();
}
dq.push_back({ i, x });
ans += dq.front().second;
}
fout << ans;
}