Pagini recente » Cod sursa (job #391644) | Cod sursa (job #2387568) | Cod sursa (job #1346223) | Cod sursa (job #2124181) | Cod sursa (job #282879)
Cod sursa(job #282879)
#include<stdio.h>
#define dim 5000001
int a[dim],c[dim];
long long suma;
int n,k,prim,ultim,i;
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]);
prim=ultim=1;
c[prim]=1;
i=2;
while(i<=n)
{
if(i==(c[prim]+k))
prim++;
while( (a[i]<a[c[ultim]]) && (prim<=ultim) )
ultim--;
ultim++;
c[ultim]=i;
if(i>=k)
{
suma+=a[c[prim]];
}
i++;
}
printf("%lld \n", suma);
return 0;
}