Cod sursa(job #2925574)

Utilizator SabrinaGiuliaMacoveiciuc Sabrina Giulia SabrinaGiulia Data 15 octombrie 2022 18:41:24
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.67 kb
#include <bits/stdc++.h>

using namespace std;

ifstream f("deque.in");
ofstream g("deque.out");

int n,i,j,k,a[5000005];
long long s;
deque <int> d;
deque <int> e;

int main()
{
    f>>n>>k;
    for(i=1;i<=n;i++)
        f>>a[i];
    for(i=1;i<=n;i++)
    {
        while(!d.empty() && a[i]<=d.back())
        {
            d.pop_back();
            e.pop_back();
        }
        d.push_back(a[i]);
        e.push_back(i);
        if(i>=k)
        {
            s+=d.front();
            if(i-k==e.front()-1)
            {
                d.pop_front();
                e.pop_front();
            }
        }
    }
    g<<s;

    return 0;
}