Pagini recente » Cod sursa (job #570778) | Cod sursa (job #2680790) | Cod sursa (job #2903293) | Cod sursa (job #2134130) | Cod sursa (job #624272)
Cod sursa(job #624272)
#include<stdio.h>
FILE *fin=fopen("deque.in","r");
FILE *fout=fopen("deque.out","w");
long long s;
int n,k,v[5000005],i,p,u,d[5000005];
int main(){
fscanf(fin,"%d %d",&n,&k);
p=1;
u=1;
d[1]=1;
fscanf(fin,"%d",&v[1]);
for(i=2;i<=n;i++){
fscanf(fin,"%d",&v[i]);
while(p<=u && v[d[u]]>=v[i]){
u--;
}
d[++u]=i;
if(i-d[p]==k){
p++;
}
if(i>=k){
s+=v[d[p]];
}
}
fprintf(fout,"%lld",s);
return 0;
}