Cod sursa(job #979832)

Utilizator stefan.friptuPetru Stefan Friptu stefan.friptu Data 2 august 2013 21:42:20
Problema Deque Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.48 kb
#include <cstdio>

int a[5100000],n,i,p=1,k,u,d[5100000];
long long e;

using namespace std;

int main(){
	
	freopen("deque.in","r",stdin);
	freopen("deque.out","w",stdout);
	
    scanf("%ld%ld",&n,&k);
    for (i=1;i<=n;i++)
      scanf("%ld",&a[i]);
    for (i=1;i<=n;i++)
     {
         while (p<=u && a[i]<=a[d[u]])
			 u--;
         d[++u]=i;
         if (d[p]==i-k)
			 p++;
         if (i>=k)
			 e+=a[d[p]];
  
     }
     printf("%lld",e);
	 return 0;
}