Cod sursa(job #3002852)

Utilizator brianna_enacheEnache Brianna brianna_enache Data 15 martie 2023 11:38:39
Problema Deque Scor 25
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.61 kb
#include <bits/stdc++.h>
#define nmax 5000050
using namespace std;

ifstream in("deque.in");
ofstream out("deque.out");
/**
9 3
-7 9 2 4 -1 5 6 7 1
*/
int dq[nmax], a[nmax], n, k;
int main()
{
    int i, fr = 1, bk = 0, sum = 0;
    in >> n >> k;
    for(i = 1; i <= n; i++)
        in >> a[i];
    for(i = 1; i <= n; i++)
    {
        while(fr <= bk and a[i] <= a[dq[bk]])
            bk--;
        bk++;
        dq[bk] = i;
        if(dq[fr] == i - k)
            fr++;
        if(i >= k) sum += a[dq[fr]];
    }
    out << sum << "\n";
    in.close();
    out.close();
    return 0;
}