Cod sursa(job #2116869)

Utilizator EdgeLordXDOvidiuPita EdgeLordXD Data 28 ianuarie 2018 11:29:33
Problema Deque Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.38 kb
#include <iostream>
using namespace std;
int a[5000001];
int d[5000001];
int main(){
    int n,k,i,s=0;
    cin>>n>>k;
    for(i=1; i<=n; ++i)
        cin>>a[i];
    int st=1,dr=0;
    for(i=1; i<=n; ++i){
        while(st<=dr && a[i]<=a[d[dr]]) --dr;
        d[++dr]=i;
        if(d[st]==i-k) ++st;
        if(i>=k) s+=a[d[st]];
    }
    cout<<s;
    return 0;
}