Pagini recente » Cod sursa (job #1125744) | Statistici cont de incercari (Stefan_Victor) | Cod sursa (job #1332774) | Cod sursa (job #1319641) | Cod sursa (job #3357944)
#include <cstdio>
int a[5000005], dq[5000005];
int main() {
freopen("deque.in", "r", stdin);
freopen("deque.out", "w", stdout);
int n, k;
scanf("%d%d", &n, &k);
for (int i = 1; i <= n; ++i)
scanf("%d", &a[i]);
int st = 1, dr = 0;
long long sol = 0;
for (int i = 1; i <= n; ++i) {
while (st <= dr && a[dq[dr]] >= a[i])
--dr;
dq[++dr] = i;
if (dq[st] == i - k)
++st;
if (i >= k)
sol += a[dq[st]];
}
printf("%lld", sol);
return 0;
}