Cod sursa(job #2204741)

Utilizator canmihaiCancescu Mihai canmihai Data 16 mai 2018 22:36:17
Problema Deque Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.54 kb
#include <iostream>
#include <fstream>
#define m 5000010
int n,k,v[m],d[m];
long long sum;
using namespace std;
int main() {
    ifstream fin("deque.in");
    ofstream fout("deque.out");
    fin>>n>>k;
    for(int i=1;i<=n;i++)
        fin>>v[i];
    int cap=1,coada=0;
    for(int i=1;i<=n;i++){
        while(cap<=coada && v[i]<v[d[coada]])
            coada--;
        d[++coada]=i;
        if(d[cap]==i-k)
            cap++;
        if(i>=k)
            sum+=v[d[cap]];


    }

    fout<<sum;




    return 0;
}