Cod sursa(job #2936941)

Utilizator stefan_anastasiuAnastasiu Stefan stefan_anastasiu Data 9 noiembrie 2022 18:05:58
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda cnilc1_2-dq Marime 0.5 kb
#include <bits/stdc++.h>

using namespace std;
ifstream f("deque.in");
ofstream g("deque.out");
long long n,k,v[5000005],i,s;
deque<int> dq;
int main()
{
    f>>n>>k;
    for(i=1;i<=n;i++)f>>v[i];
    dq.push_front(1);
    for(i=1;i<=n;i++){
    while(!dq.empty() && v[dq.back()]>=v[i]){
    dq.pop_back();
    }
    dq.push_back(i);
    if(i>=k){
        while(!dq.empty() && i-dq.front()>=k)
         dq.pop_front();
         s+=v[dq.front()];
    }
    }
    g<<s;
    return 0;
}