Pagini recente » Cod sursa (job #2989892) | Cod sursa (job #2708914) | Cod sursa (job #2889058) | Cod sursa (job #336074) | Cod sursa (job #253189)
Cod sursa(job #253189)
#include<stdio.h>
#define N 5000002
int a[N],dq[N];
long long sol;
int main(){
int n, k, s, d, i;
freopen("deque.in","r",stdin);
freopen("deque.out","w",stdout);
scanf("%d %d", &n, &k);
for (i=1;i<=n;i++) scanf("%d ",&a[i]);
s = 1;d = 1;dq[1]=1;
for (i = 1; i <= n; i++){
if (dq[s] <= i-k && s <= d) s++;
for ( ;a[dq[d]] >= a[i] && s <= d; d--);
dq[++d] = i;
if (i>=k) sol+= a[dq[s]];
}
printf("%lld\n",sol);
return 0;
}