Cod sursa(job #2726438)

Utilizator XeinIonel-Alexandru Culea Xein Data 20 martie 2021 22:29:18
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.56 kb
#include <fstream>

int main()
{
    std::ifstream f("deque.in");
    int N, K;
    long long Suma = 0;
    f >> N >> K;
    int deq[N], Poz[N];

    int Back = -1, Front = 0;
    for(int i = 0; i < N; ++i)
    {
        f >> deq[i];
        while(Front <= Back && deq[i] <= deq[Back])
            --Back;

        deq[++Back] = deq[i];
        Poz[Back] = i;

        if(Poz[Front] == i - K)
            ++Front;

        if(i + 1 >= K)
            Suma += deq[Front];
    }

    std::ofstream g("deque.out");
    g << Suma;
    return 0;
}