Cod sursa(job #2138501)

Utilizator radurotaruRotaru Radu Stefan radurotaru Data 21 februarie 2018 18:13:00
Problema Deque Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.5 kb
#include <fstream>

using namespace std;
ifstream f("deque.in");
ofstream g("deque.out");
int v[5000001],deque[5000001],back,front,k,n;
long long s;
int main()
{
    f>>n>>k;
    for(int i=1;i<=n;i++)
    f>>v[i];
    for(int i=1;i<=n;i++)
    {
        while(front<=back && v[i]<=v[deque[back]])
        {
            back--;
        }
        deque[back++]=i;
        if(deque[front]==i-k)
        front++;
        if(i>=k)
        s=s+v[deque[front]];
    }
    g<<s;
    return 0;
}