Cod sursa(job #413339)
#include<stdio.h>
//#include<deque>
int n,k, a[5000100];
int inc, sf;
int deque[5000100];
long long sum;
void cit()
{
scanf("%d %d",&n,&k);
int i;
for(i=1; i<=n; i++) scanf("%d",&a[i]);
}
void rez()
{
inc=1, sf=0;
for(int i=1; i<=n; i++)
{
while(inc<=sf && a[i]<=a[deque[sf]])
sf--;
deque[++sf]=i;
if(deque[inc]==i-k)
inc++;
if( i>=k)
sum+=a[deque[inc]];
}
}
void afis()
{
printf("%lld ", sum);
}
int main()
{
freopen("deque.in","r",stdin);
freopen("deque.out","w",stdout);
cit();
rez();
afis();
return 0;
}