Cod sursa(job #3226153)

Utilizator Bianca2507Negret Bianca Bianca2507 Data 20 aprilie 2024 11:56:37
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.51 kb
#include <fstream>
#include <deque>
using namespace std;
ifstream cin("deque.in");
ofstream cout("deque.out");

int n,k,st,dr,dq[5000005],v[5000005];
long long s;
int main()
{
    cin>>n>>k;
    for(int i=1; i<=n; i++)
        cin>>v[i];
    dq[1]=1;
    st=dr=1;
    for(int i=2; i<=n; i++)
    {
        while(st<=dr&&v[i]<v[dq[dr]])
            dr--;
        dq[++dr]=i;
        if(dq[st]==i-k)
            st++;
        if(k<=i)
            s+=v[dq[st]];
    }
    cout<<s;
    return 0;
}