Pagini recente » Cod sursa (job #882911) | Cod sursa (job #2845475) | Cod sursa (job #1686219) | Cod sursa (job #578599) | Cod sursa (job #1607107)
#include <cstdio>
using namespace std;
#define DIM 5000001
int v[DIM], D[DIM];
int main()
{
freopen("deque.in","r",stdin);
freopen("deque.out","w",stdout);
int n, k, i, j, t, d, st, dr;
long long s = 0;
scanf("%d%d",&n,&k);
for( i = 1; i <= n; ++i ) scanf("%d",&v[i]);
D[1] = st = dr = 1;
for( i = 2; i <= n; ++i ){
while( st <= dr && v[i] <= v[D[dr]] )
dr--;
dr++;
D[dr] = i;
while( D[st] <= i - k ) st++;
if( i >= k ) s = s + (long long)v[D[st]];
}
printf("%lld",s);
return 0;
}