Cod sursa(job #3031875)

Utilizator sad_carrotVisan Sebastian sad_carrot Data 20 martie 2023 22:19:57
Problema Deque Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.7 kb
#include <bits/stdc++.h>

using namespace std;

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

int main()
{
    long long n, k, sum = 0;
    f >> n >> k;
    vector < int > a(n);
    deque < int > D;
    for(int i = 0; i < n; i++)
        f >> a[i];

    for(int i = 0; i < k -1; i++){
        if(!D.empty())
            while(a[i] <= a[D.back()])
                D.pop_back();
        D.push_back(i);
    }
    for(int i = k - 1; i < n;i++){
        if(!D.empty())
            while(a[i] <= a[D.back()])
                D.pop_back();
        D.push_back(i);
        if(i - D.front() >= k)
            D.pop_front();
        sum += a[D.front()];
    }
    g << sum;
    return 0;
}