Cod sursa(job #3323565)

Utilizator Eric_RadavoiRadavoi Eric Radavoi Eric_Radavoi Data 18 noiembrie 2025 18:36:34
Problema Deque Scor 100
Compilator c-64 Status done
Runda Arhiva educationala Marime 0.76 kb
#include <stdio.h> // am sters stdlib ca nu avem nevoie de el

int v[5000000],deq[5000000];

int main()
{
    FILE *fin,*fout;
    long long sum;
    int n,k,i,poz,st;
    fin=fopen("deque.in","r");
    fscanf(fin,"%d%d",&n,&k);
    st=1;
    poz=0;
    for (i=1;i<k;i++){
        fscanf(fin,"%d",&v[i]);
        while(st<=poz && v[deq[poz]]>v[i])
            poz--;
        deq[++poz]=i;
    }
    sum=0;
    for (i=k;i<=n;i++){
        fscanf(fin,"%d",&v[i]);
        while(st<=poz && v[deq[poz]]>v[i])
            poz--;
        deq[++poz] = i;
        while(deq[st] < i-k+1)
           st++;
        sum += v[deq[st]];
    }
    fclose(fin);
    fout=fopen("deque.out","w");
    fprintf(fout,"%lld",sum);
    fclose(fout);
    return 0;
}