Cod sursa(job #3128449)

Utilizator AlexC23Codreanu Alex-Cosmin AlexC23 Data 9 mai 2023 16:27:39
Problema Deque Scor 25
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.71 kb
#include <iostream>
#include <fstream>
#include <vector>
#include <algorithm>

using namespace std;

int main() {
    ifstream f("deque.in");

    int n, k;
    f >> n >> k;
    vector<int> v;
    for (int i = 0; i < n; i++) {
        int a;
        f >> a;
        v.push_back(a);
    }

    int sum = 0;
    vector<int> v2;
    for (int i = 0; i < n; i++) {
        if (!v2.empty() && v2.front()<=i-k) {
            v2.erase(v2.begin());
        }
        while (!v2.empty() && v[v2.back()]>= v[i]) {
            v2.pop_back();
        }
        v2.push_back(i);

        if (i>= k-1) {
            sum += v[v2.front()];
        }
    }


    ofstream g("deque.out");
    g << sum;

    f.close();
    g.close();
    return 0;
}