Cod sursa(job #2723485)

Utilizator stefdascalescuStefan Dascalescu stefdascalescu Data 14 martie 2021 11:27:23
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.52 kb
#include<bits/stdc++.h>
using namespace std;
ifstream f("deque.in");
ofstream g("deque.out");
int n, v[5000002], k, d[5000002], st = 1, dr = 1;
long long ans;
int main()
{
    f >> n >> k;
    for(int i = 1; i <= n; ++i)
        f >> v[i];
    
    for(int i = 1; i <= n; ++i)
    {
        while(dr >= st && v[d[dr]] > v[i])
            --dr;
        if(dr >= st && d[st] == i-k)
            ++st;
        d[++dr] = i;
        if(i >= k)
            ans += v[d[st]];
    }
    g << ans;
    return 0;
}