Cod sursa(job #3260211)

Utilizator iccjocIoan CHELARU iccjoc Data 30 noiembrie 2024 18:20:03
Problema Deque Scor 60
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.63 kb
#include <fstream>
#include <deque>
#define int long long
using namespace std;
ifstream cin("deque.in");
ofstream cout("deque.out");
signed main()
{
    int n, k, sm = 0;
    cin >> n >> k;
    deque<pair<int, int>> d;
    for(int i = 1; i <= n; i++)
    {
        int x;
        cin >> x;
        while(!d.empty() && d.back().first > x)
        {
            d.pop_back();
        }
        while(!d.empty() && d.front().second <= i - k)
        {
            d.pop_front();
        }
        d.push_back({x, i});
        if(i >= k)
        {
            sm += d.front().first;
        }
    }
    cout << sm;
}