Pagini recente » Cod sursa (job #300712) | Cod sursa (job #3232340) | Cod sursa (job #2374168) | Cod sursa (job #498966) | Cod sursa (job #821414)
Cod sursa(job #821414)
#include<cstdio>
#include<queue>
#define BM 5000005
using namespace std;
deque <int> c;
int a[BM];
int main () {
int n,k,i;
long long s=0;
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]);
for(i=1;i<=n;++i){
if(!c.empty())for(;(!c.empty())&&a[c.back()]>a[i];c.pop_back());
c.push_back(i);
if(c.front()<=i-k)c.pop_front();
if(i>=k)s+=a[c.front()];
}
printf("%lld",s);
return 0;
}