Cod sursa(job #2049599)

Utilizator DovlecelBostan Andrei Dovlecel Data 27 octombrie 2017 14:42:28
Problema Deque Scor 60
Compilator cpp Status done
Runda Arhiva educationala Marime 0.47 kb
#include <fstream>

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