Cod sursa(job #2657228)

Utilizator CalinNavadaruCalin Navadaru CalinNavadaru Data 10 octombrie 2020 09:58:01
Problema Deque Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.72 kb
#include <iostream>
#include <deque>
using namespace std;

deque <pair<long long int, long long int>> dublacoada;
long long int n, k;


int main()
{
    long long int suma_minime = 0;
    cin >> n >> k;
    long long int x;
    cin >> x;
    dublacoada.push_front(make_pair(x, 0));
    n--;
    for(int i = 1; i < n; i++) {
        cin >> x;
        if(dublacoada.front().first < x && dublacoada.back().first > x) {
            dublacoada.pop_back();
        }
        dublacoada.push_back(make_pair(x, i));
        if(dublacoada.front().second + k == i) {
            suma_minime+=dublacoada.front().first;
            dublacoada.pop_front();
        }

    }
    cout << suma_minime;
    return 0;
}