Cod sursa(job #2642779)

Utilizator alextmAlexandru Toma alextm Data 17 august 2020 10:25:50
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.59 kb
#include <fstream>
#include <deque>
using namespace std;

ifstream fin("deque.in");
ofstream fout("deque.out");

deque<int> D;
int v[5000001];

int main() {
    int n, k, x;

    fin >> n >> k;
    for(int i = 1; i <= n; i++)
        fin >> v[i];

    long long ans = 0;
    for(int i = 1; i <= n; i++) {   
        while(!D.empty() && v[i] <= v[D.back()])
            D.pop_back();

        D.push_back(i);
        if(i - k == D.front()) 
            D.pop_front();

        if(i >= k) 
            ans += v[D.front()];
    }

    fout << ans << '\n';

    return 0;
}