Cod sursa(job #1624940)

Utilizator savigunFeleaga Dragos-George savigun Data 2 martie 2016 15:01:52
Problema Deque Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.46 kb
#include <iostream>
#include <fstream>
using namespace std;

int d[5000001], v[5000001];

int main()
{
    ifstream cin("deque.in");
    ofstream cout("deque.out");

int n, k, u=1, i, p=1;
long long s=0;

cin>>n>>k;

for(i=1;i<=n;i++)
    cin>>v[i];

d[p]=1;

for(i=2;i<=n;i++)
{
    while(u>=p && v[i]<v[d[u]])
        u--;
    d[++u] = i;

    if(d[p]<i-k+1)
        p++;

    if(i>=k)
        s+=v[d[p]];
}
cout<<s;
    return 0;
}