Cod sursa(job #2721663)

Utilizator Marius7122FMI Ciltea Marian Marius7122 Data 12 martie 2021 04:34:08
Problema Deque Scor 60
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.49 kb
#include <stdio.h>
long i,k,n,v[5000005],d[5000005],p,u;
long long sum;
int main()
{
    FILE *f1,*f2;
    f1=fopen("deque.in","r");
    f2=fopen("deque.out","w");
    fscanf(f1,"%ld%ld",&n,&k);
    p=d[1]=1;u=0;
    for(i=1;i<=n;i++)
    {
        fscanf(f1,"%ld",&v[i]);
        while(v[i]<v[d[u]] && u>=p)
            u--;
        d[++u]=i;
        if(d[p]==i-k)
            p++;
        if(i>=k)
            sum+=v[d[p]];
    }
    fprintf(f2,"%lld",sum);
    return 0;
}