Cod sursa(job #2902401)

Utilizator TODEToderita Mihai TODE Data 16 mai 2022 10:26:58
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.54 kb
#include <fstream>
#include <deque>
using namespace std;

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

const int N = 5*1e6 + 1;
int v[N];
long long s;
int main(){
    int n , k;
    cin>>n>>k;
    deque<int> dq;
    for(int i = 0 ; i < n ; i++){
        cin>>v[i];
        if(!dq.empty() && dq.front() == i - k)
            dq.pop_front();
        while(!dq.empty() && v[dq.back()] >= v[i])
            dq.pop_back();
        dq.push_back(i);
        if(i >= k - 1)
            s+=v[dq.front()];
    }
    cout<<s;
}