Cod sursa(job #2070466)

Utilizator mariaBmaria blaj mariaB Data 19 noiembrie 2017 16:28:00
Problema Deque Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.54 kb
#include <iostream>
#include <fstream>
#include <deque>
using namespace std;
deque <pair<long long,long long>>d;
int main()
{
    ifstream cin("deque.in");
    ofstream cout("deque.out");
    long long n,k,i,s=0,a;
    cin>>n>>k;
    for(i=1;i<=n;i++){
        cin>>a;
        while(!d.empty() && a<=d.back().first){
            d.pop_back();
        }
        d.push_back(make_pair(a,i));
        if(d.front().second<=i-k)
            d.pop_front();
        if(i>=k)
        s+=d.front().first;
    }
    cout<<s;
    return 0;
}