Cod sursa(job #3357923)

Utilizator TestLicenta123Test Test TestLicenta123 Data 13 iunie 2026 21:51:09
Problema Deque Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.65 kb
#include <iostream>
#include <fstream>
#include <vector>
#include <deque>

int main() {
    std::ifstream input("deque.in");
    std::ofstream output("deque.out");

    int n, k;
    std::vector<int> a;

    input >> n >> k;
    long long ans = 0;

    for (int i = 1; i <= n; ++i) {
        int x;
        input >> x;
        a.push_back(x);
    }

    std::deque<int> deque;

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

        deque.push_back(i);

        if (deque.front() == i - k) deque.pop_front();

        if (i >= k - 1) ans += a[deque.front()];
    }
    output << ans;
    return 0;
}