Cod sursa(job #2988742)

Utilizator Nasa1004Ema Nicole Gheorghe Nasa1004 Data 5 martie 2023 13:55:22
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.62 kb
#include <fstream>
#include <deque>
//#define int long long int

using namespace std;
ifstream cin("deque.in");
ofstream cout("deque.out");

deque<int> dq;
int v[5000001];
int32_t main()
{
    int n, k;
    long long int sum=0;
    cin>>n>>k;
    for(int i=0; i<n; i++) cin>>v[i];

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

        dq.push_back(i);

        if(dq.front()<=i-k)
            dq.pop_front();

        if(i>=k-1)
            sum+=v[dq.front()];
    }
    cout<<sum;
    return 0;
}
/*
9 3
-7 9 2 4 -1 5 6 7 1
*/