Cod sursa(job #2030603)

Utilizator luanastLuana Strimbeanu luanast Data 1 octombrie 2017 20:32:16
Problema Deque Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.46 kb
#include <fstream>
using namespace std;
ifstream fin ("deque.in");
ofstream fout ("deque.out");
int n,k,i,p,u,x,a[5000001],c[5000001];
long long sol;


int main(){
    fin>>n>>k;
    for(i=1;i<=n;i++)
        fin>>a[i];
    p=1;
    for(i=1;i<=n;i++){
        while(p<=u && a[i]<=a[c[u]])
            --u;
        c[++u]=i;
        if(c[p]==i-k)
            ++p;
        if(i>=k)
            sol+=a[c[p]];
    }
    fout<<sol;
    return 0;
}