Cod sursa(job #2625074)

Utilizator roxana1708Roxana Gherghina roxana1708 Data 5 iunie 2020 18:29:10
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.55 kb
#include <fstream>
#include <deque>

using namespace std;

int main() {
    ifstream f("deque.in");
    ofstream g("deque.out");

    int n, k;
    long long sol = 0;
    deque<int> d;

    f >> n >> k;

    int  v[n+1];

    for(int i = 1; i <= n; i++)
        f >> v[i];


    for(int i = 1; i <= n; i++) {

        while(!d.empty() && v[i] <= v[d.back()])
            d.pop_back();

        d.push_back(i);

        if(d.front() == i-k)
            d.pop_front();

        if(i >= k)
            sol += v[d.front()];
    }
    
    g << sol;
    return 0;
}