Cod sursa(job #3287830)

Utilizator vladneaguvladCristianoRonaldo vladneagu Data 19 martie 2025 15:19:26
Problema Deque Scor 60
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.72 kb
#include <fstream>
#include <deque>
#define pii pair<int,int>
#define int long long
using namespace std;
const int maxn=5e6+1;
int v[maxn];
ifstream cin("deque.in");
ofstream cout("deque.out");
deque<pii> mini;
signed main()
{
    int n,k;
    cin>>n>>k;
    for(int i=1;i<=n;i++){
        cin>>v[i];
    }
    int rsp=0;
    for(int i=1;i<=n;i++){
        int a=v[i];
        while(mini.empty()==false && mini.front().second<=(i-k))mini.pop_front();
        while(mini.empty()==false && a<=mini.back().first){
            mini.pop_back();
        }
        mini.push_back({a,i});
        //if(i>=k)cout<<mini.front().first<<" ";
        if(i>=k)rsp=rsp+mini.front().first;
    }
    cout<<rsp;
    return 0;
}