Cod sursa(job #3231014)

Utilizator BogdanBurescuBogdan Burescu BogdanBurescu Data 23 mai 2024 20:43:06
Problema Deque Scor 60
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.63 kb
#include <fstream>
#include <deque>

using namespace std;

ifstream cin ("deque.in");
ofstream cout ("deque.out");

long long n,k,ans,v[5000005],i;
deque<long long>q;

int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    cin>>n>>k;
    ans=0;
    for(i=1;i<=n;i++)
        cin>>v[i];
    for(i=1;i<=n;i++)
    {
        while(!q.empty() && v[q.front()]>v[i])
            q.pop_front();
        q.push_front(i);
        if(i>=k)
        {
            while(!q.empty() && i-q.back()>=k)
            q.pop_back();
            ans+=v[q.back()];
        }

    }
    cout<<ans;
    return 0;
}