Cod sursa(job #2730215)

Utilizator butasebiButa Gabriel-Sebastian butasebi Data 25 martie 2021 22:30:13
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.58 kb
#include <bits/stdc++.h>
using namespace std;
long long n, k, i, sum;
struct elem
{
    long long val;
    long long poz;
}x;
deque <elem> Q;
int main()
{
    ifstream f("deque.in");
    ofstream g("deque.out");
    f >> n >> k;
    for(i = 1; i <= n; i ++)
    {
        f >> x.val;
        x.poz = i;
        while(!Q.empty() && Q.back().val >= x.val)
            Q.pop_back();
        Q.push_back(x);
        if(i < k)continue;
        while(Q.front().poz  <= i - k)
            Q.pop_front();
        sum = sum + Q.front().val;
    }
    g << sum;
    return 0;
}