Cod sursa(job #2394324)

Utilizator stefdascalescuStefan Dascalescu stefdascalescu Data 1 aprilie 2019 15:46:59
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.54 kb
#include<bits/stdc++.h>
using namespace std;
ifstream f("deque.in");
ofstream g("deque.out");
int n, v[5000002], k;
long long ans;
int main()
{
    f >> n >> k;
    for(int i = 1; i <= n; ++i)
        f >> v[i];
    deque<int>d;
    for(int i = 1; i <= n; ++i)
    {
        while(!d.empty() && v[d.back()] > v[i])
            d.pop_back();
        if(!d.empty() && d.front() == i-k)
            d.pop_front();
        d.push_back(i);
        if(i >= k)
            ans += v[d.front()];
    }
    g << ans;
    return 0;
}