Pagini recente » Cod sursa (job #1459405) | Cod sursa (job #205234) | Cod sursa (job #757587) | Cod sursa (job #1236508) | Cod sursa (job #1314055)
#include <cstdio>
#define NMAX 5000003
using namespace std;
int v[NMAX],d[NMAX],pr=1,ul=0,n,k;
long long int s=0;
int main()
{
int i;
FILE *f=fopen("deque.in","r");
fscanf(f,"%d%d",&n,&k);
for(i=1;i<=n;i++)
fscanf(f,"%d",&v[i]);
fclose(f);
for (i=1;i<=n;i++)
{
while((v[i]<=v[d[ul]])&&(pr<=ul))
ul--;
d[++ul]=i;
if(d[pr]==i-k)
pr++;
if(i>=k)
s+=v[d[pr]];
}
f=fopen("deque.out","w");
fprintf(f,"%lld",s);
fclose(f);
return 0;
}