Cod sursa(job #3345615)

Utilizator razvanantonAnton Razvan-Stefan razvananton Data 10 martie 2026 12:54:09
Problema Deque Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.81 kb
#include <iostream>
#include <vector>
#include <algorithm>
#include <climits>
#include <deque>

using namespace std;

int v[5000010];

int main()
{
    ios::sync_with_stdio(0); cin.tie(0);

    freopen("deque.in","r",stdin);
    freopen("deque.out","w",stdout);

    long long sum=0;
    int n,k;
    cin>>n>>k;
    for(int i=1;i<=n;++i)
        cin>>v[i];
    
    deque<int> dq;

    for(int i=1;i<=n;++i)
    {
        if(dq.empty() or v[dq.back()]<=v[i])
        {
            while(!dq.empty() and v[dq.back()]>v[i])
            {
                dq.pop_back();
            }
            dq.push_back(i);
        }
        while(i>=k and !dq.empty() and dq.front()<=i-k)
        {
            dq.pop_front();
        }
        if(i>=k)
        {
            sum+=v[dq.front()];
        }
    }
    cout<<sum;

    return 0;
}