Cod sursa(job #2733993)

Utilizator Breezy_1975Badoiu Petru Andrei Breezy_1975 Data 31 martie 2021 11:08:16
Problema Deque Scor 25
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.67 kb
#include <fstream>
#include <deque>

using namespace std;

const int N = 100000;

int v[N], n, k;
deque <int> dmin;

int main()
{
    ifstream in("deque.in");
    ofstream out("deque.out");
    in >> n >> k;
    int rez = 0;
    for (int i = 0; i < n; i++)
    {
        in >> v[i];
        if (!dmin.empty() && dmin.front() == i - k)
        {
            dmin.pop_front();
        }
        while (!dmin.empty() && v[i] <= v[dmin.back()])
        {
            dmin.pop_back();
        }
        dmin.push_back(i);
        if (i >= k - 1)
        {
            rez += v[dmin.front()];
        }
    }
    out << rez;
    in.close();
    out.close();
}