Cod sursa(job #2379007)

Utilizator dan.ghitaDan Ghita dan.ghita Data 12 martie 2019 20:01:32
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.59 kb
#include <bits/stdc++.h>

using namespace std;

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

int n, m, x, k;
deque<int> dq;
vector<int> v;

int main()
{
    f >> n >> k;

    long long sum = 0;
    for (int i = 0; i < n; ++i)
    {
        f >> x;
        v.push_back(x);

        if (!dq.empty() && i - dq.front() + 1 > k)
            dq.pop_front();

        while (!dq.empty() && v[dq.back()] > x)
            dq.pop_back();

        dq.push_back(i);

        if(!dq.empty() && i >= k - 1)
            sum += v[dq.front()];
    }

    g << sum;

    return 0;
}