Cod sursa(job #2284719)

Utilizator httpsLup Vasile https Data 17 noiembrie 2018 13:38:13
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.56 kb
#include <fstream>
#include <deque>

using namespace std;

ifstream fin("deque.in");
ofstream fout("deque.out");

deque<pair<int,int>> d;

#define pos first
#define val second

int main()
{
    int N, K, x;
    long long res = 0;
    fin>>N>>K;

    for(int i = 0; i < N; ++i) {
        if(!d.empty() && d.front().pos <= i-K) d.pop_front();

        fin>>x;
        while(!d.empty() && x < d.back().val) d.pop_back();
        d.push_back({i, x});

        if(i+1 >= K)
            res += d.front().val;
    }

    fout<<res;
    return 0;
}