Cod sursa(job #2477489)

Utilizator alex02Grigore Alexandru alex02 Data 20 octombrie 2019 14:23:14
Problema Deque Scor 25
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.57 kb
#include <iostream>
#include <fstream>
#include <deque>

using namespace std;

ifstream f("deque.in");
ofstream g("deque.out");

deque< pair<int,int> >dq;
int n,k,suma=0;



int main() {
    f>>n>>k;
    for(int i=0; i<n; i++){
        int aux;
        f>>aux;
        while(!dq.empty() && dq.front().second<=i-k){
            dq.pop_front();
        }
        while(!dq.empty() && dq.back().first>=aux){
            dq.pop_back();
        }
        dq.push_back(make_pair(aux,i));
        if(i>=k-1){
            suma += dq.front().first;
        }
    }
    g<<suma;
    return 0;
}