Cod sursa(job #2639886)

Utilizator proflaurianPanaete Adrian proflaurian Data 4 august 2020 13:42:44
Problema Deque Scor 60
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.64 kb
#include <bits/stdc++.h>

using namespace std;
ifstream f("deque.in");
ofstream g("deque.out");
list<pair<int,int>> q;
int64_t suma;
int n,k,x;
int main()
{
    f>>n>>k;
    for(int i=1;i<k;i++)
    {
        f>>x;
        while(q.size() && x <= q.back().first)
            q.pop_back();
        q.push_back(make_pair(x,i));
    }
    for(int i=k;i<=n;i++)
    {
        if(q.front().second==i-k)
            q.pop_front();
        f>>x;
        while(q.size() && x <= q.back().first)
            q.pop_back();
        q.push_back(make_pair(x,i));
        suma += q.front().first;

    }
    g<<suma;
    return 0;
}