Cod sursa(job #2744983)

Utilizator Gabriel_DascalescuGabriel Dascalescu Gabriel_Dascalescu Data 25 aprilie 2021 17:47:10
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.51 kb
#include <fstream>
#define nmax 5000005

using namespace std;

ifstream in("deque.in");
ofstream out("deque.out");

int n, k;

int v[nmax], de[nmax],  p = 1, q;

long long sum;

int main()
{
    in>>n>>k;
    for(int i=1; i<=n; i++)
    {
        in>>v[i];
        while(p<=q && v[i]<=v[de[q]])
            q--;
        q++;
        de[q] = i;
        if(i - de[p]>=k)
        {
            p++;
        }

        if(i>=k)
            sum+=v[de[p]];
    }
    out<<sum;
    return 0;
}