Cod sursa(job #2794727)

Utilizator Nicolae_CirleaNicolae Cirlea Nicolae_Cirlea Data 5 noiembrie 2021 12:42:44
Problema Deque Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.55 kb
#include <deque>
#include <fstream>
using namespace std;

ifstream cin ("deque.in");
ofstream cout ("deque.out");

int a[5000001], n, k, i;
long long s;

deque <int> q;

int main ()
{
    cin >> n >> k;
    for (i=0; i<n; i++)
        cin >> a[i];

    for (i=0; i<n; i++)
    {
        while(!q.empty() && a[i] <= a[q.back()])
            q.pop_back();
        q.push_back(i);

        if(q.front() <= i - k)
            q.pop_front();

        if (i >= k)
            s += a[q.front()];
    }

    cout << s;

    return 0;
}