Pagini recente » Cod sursa (job #318773) | Cod sursa (job #688108) | Cod sursa (job #3273904) | Cod sursa (job #2290193) | Cod sursa (job #407210)
Cod sursa(job #407210)
#include<stdio.h>
long a[5000100], Deque[5000100];
long long Sum;
long n,k;
void cit();
void rez();
void afis();
int main() {
freopen("deque.in", "r", stdin);
freopen("deque.out", "w", stdout);
cit();
rez();
afis();
return 0;
}
void cit() {
scanf("%d%d", &n,&k);
for(long i=1; i<=n; i++)
scanf("%d",&a[i]);
}
void rez() {
long inc=1,sf=0;
for(long 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);
}