Pagini recente » Cod sursa (job #1266135) | Cod sursa (job #529810) | Cod sursa (job #2082397) | Cod sursa (job #2692682) | Cod sursa (job #2573237)
#include <bits/stdc++.h>
using namespace std;
ifstream fin ("deque.in");
ofstream fout ("deque.out");
void usain_bolt()
{
ios::sync_with_stdio(false);
fin.tie(0);
}
const int N = 5e6 + 5;
int dq[N], a[N];
int main()
{
usain_bolt();
int n, k, l = 1, r = 0;
long long sum = 0;
fin >> n >> k;
for(int i = 1; i <= n; ++i) fin >> a[i];
for(int i = 1; i <= n; ++i) {
while(l >= r && a[i] <= a[dq[l]]) --l;
dq[++l] = i;
if(dq[r] == i - k) ++r;
if(i >= k) sum += 1LL * a[dq[r]];
}
fout << sum;
return 0;
}