Pagini recente » Cod sursa (job #2194846) | Cod sursa (job #702117) | Cod sursa (job #2897675) | Cod sursa (job #1377207) | Cod sursa (job #1058631)
#include<cstdio>
#define nmax 5000010
using namespace std;
int n,k,st,dr,i,a[nmax],D[nmax];
long long Sum;
int main()
{ 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]);
st=1; dr=0;
for(i=1;i<=n;++i)
{ while(st<=dr && a[i]<=a[D[dr]]) dr--;
D[++dr]=i;
if(D[st]==i-k) st++;
if(k<=i) Sum+=a[D[st]];
}
printf("%lld\n",Sum); return 0;
}