Cod sursa(job #1255252)

Utilizator binicBinica Nicolae binic Data 4 noiembrie 2014 16:20:43
Problema Deque Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.49 kb
#include<cstdio>
int n,k,ls,i,ld,x;
long long s;
struct nr
{
    int nr,p;
}a[5000002];
int main()
{
    freopen("deque.in","r",stdin);
    freopen("deque.out","w",stdout);
    scanf("%d %d",&n,&k);
    ls=1;
    for(i=1;i<=n;i++)
    {
        scanf("%d",&x);
        while(x<=a[ld].nr&&ld>=ls)
            ld--;
        ld++;
        a[ld].nr=x;
        a[ld].p=i;
        if(i-a[ls].p>=k)ls++;
        if(i>=k)s+=a[ls].nr;
    }
    printf("%lld",s);
    return 0;
}