Cod sursa(job #2636431)

Utilizator Teodora1314Teodora Oancea-Negoita Teodora1314 Data 18 iulie 2020 00:59:52
Problema Deque Scor 60
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.53 kb
//#include <iostream>
#include <fstream>
using namespace std;
long long n,a[5000005],dq[5000005],i,mn=10000000,s,j,k,st,dr;
ifstream cin("deque.in");
ofstream cout("deque.out");
int main()
{
    cin>>n>>k;
    for(i=1;i<=n;i++)
        cin>>a[i];
    dr=1; st=0;
    for(i=1;i<=n;i++)
    {
        while(dr<=st &&a[i]<=a[dq[st]])
        {
            st--;
        }
        dq[++st]=i;

        if(dq[dr]==i-k)
            dr++;
        if(i>=k)
            s=s+a[dq[dr]];

    }
    cout<<s;
    return 0;
}