Cod sursa(job #2999569)

Utilizator raulababeiAbabei Raul raulababei Data 11 martie 2023 10:35:01
Problema Deque Scor 25
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.56 kb
#include <fstream>
#include <deque>

using namespace std;

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

int n, a[5000001];
int k;
int q[5000001];
int sum = 0;

int main()
{
    in >> n >> k;
    for(int i = 1;i <= n;i++){
        in >> a[i];
    }
    int pq = 0, uq = -1;
    for(int i = 1;i <= n;i++){
        while(pq <= uq && a[i] <= a[q[uq]]){
            uq--;
        }
        q[++uq] = i;
        if(q[pq] <= i - k){
            pq++;
        }
        if(i >= k) sum += a[q[pq]];
    }
    out << sum;
    return 0;
}