Cod sursa(job #2624004)

Utilizator AlinaFloreaFlorea Alina AlinaFlorea Data 4 iunie 2020 13:01:15
Problema Deque Scor 10
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.62 kb
#include <fstream>
#include <deque>
using namespace std;
ifstream f("deque.in");
ofstream g("deque.out");
long long n,i,j,m,k,s,nr[5000001];
deque <long long> d;
int main()
{
    f>>n>>k;
    for(i=1;i<=k;i++){
        f>>nr[i];
        while(!d.empty()&&nr[i]<=nr[d.back()])
            d.pop_back();
        d.push_back(i);
    }
    s+=nr[d.front()];
    for(i=k+1;i<=n;i++){
        f>>nr[i];
        while(!d.empty()&&nr[i]<=nr[d.back()])
            d.pop_back();
        d.push_back(i);
        if(d.front()<i-k)
            d.pop_front();
        s+=nr[d.front()];
    }
    g<<s;
    return 0;
}