Cod sursa(job #1625259)

Utilizator AnduB08Boldisor Andu AnduB08 Data 2 martie 2016 17:51:41
Problema Deque Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.51 kb
#include <fstream>
using namespace std;
ifstream f("deque.in");
ofstream g("deque.out");
int n,k,i,u,p,v[5000010],d[5000010];
long long s;
int main()
{
    f>>n>>k;
    for(i=1;i<=n;++i)
    {
        f>>v[i];
    }
    u=0;
    p=1;
    for(i=1;i<=n;++i)
    {
        while(v[i]<=v[d[u]] && u>=p)
        {
            u--;
        }
        d[++u]=i;
        if(d[p]==i-k)
        {
            ++p;
        }
        if(i-k>=0)
            s+=v[d[p]];
    }
    g<<s;
    return 0;
}