Cod sursa(job #2810619)

Utilizator LeonGSLeo Jechiu LeonGS Data 29 noiembrie 2021 20:35:14
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.5 kb
#include <bits/stdc++.h>
using namespace std;

deque <int> dq;

int n,k,a[5000005];
long long sum=0;

int main(){
ifstream cin("deque.in");
ofstream cout("deque.out");
cin >> n >> k;
for(int i=1; i<=n; i++){
    cin >> a[i];
}
for(int i=1; i<=n; i++){
    while(!dq.empty() && a[dq.back()]>=a[i]){
        dq.pop_back();
    }
    dq.push_back(i);
    if(dq.front()<=i-k){
        dq.pop_front();
    }
    if(i>=k){
        sum+=a[dq.front()];
    }
}
cout << sum;
return 0;
}