Cod sursa(job #2889104)

Utilizator razvan1234Danciu Razvan razvan1234 Data 12 aprilie 2022 11:38:18
Problema Deque Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.59 kb
#include <iostream>
#include <fstream>

using namespace std;

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


int main()
{

    int n, k;
    int v[50010], w[50010];
    long long suma = 0;

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


    int beginn = 1, finall = 0;
    for (int i = 1; i <= n; i++){
        while (beginn <= finall and v[i] <= v[w[finall]]) finall--;

        w[++finall] = i;
        if (k <= i){
            suma += v[w[beginn]];
            if (w[beginn] == i - k + 1) beginn++;
        }
    }

    cout<<suma;
    return 0;
}