Cod sursa(job #3140305)

Utilizator Vasilescu_CosminVasilescu Cosmin Vasilescu_Cosmin Data 5 iulie 2023 14:42:38
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.57 kb
#include <fstream>
#include <iostream>
#include <vector>
#include <deque>

#define ll long long

using namespace std;

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

int main() {
    int n,k;
    ll ans = 0;
    deque<int> v;
    in>>n>>k;
    vector<int> nr(n+1);
    for(int i=1; i<=n ;i++){
        in>>nr[i];
        while(!v.empty() && nr[i] < nr[v.back()])
            v.pop_back();
        v.push_back(i);
        if(i>k && v.front() == i-k){
            v.pop_front();
        }
        if(i>=k)
            ans += nr[v.front()];
    }
    out<<ans;
    return 0;
}