Cod sursa(job #2050487)

Utilizator AndreiSorin26012001Cirpici Andrei Sorin AndreiSorin26012001 Data 28 octombrie 2017 10:07:41
Problema Deque Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.52 kb
#include <bits/stdc++.h>

using namespace std;

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

int p, u, d[5000005];
int a[5000005], n, k;
long long s;

int main()
{
    in>>n>>k;
    for(int i = 1; i <= n; i++)
        in>>a[i];

    p = u = d[1] = 1;

    for(int i = 2; i <= n; i++){

        while( a[i] < a[d[u]] && p <= u )
            --u;
        d[++u] = i;
        if( i - d[p] == k )
            p++;
        if( i >= k )
            s += a[d[p]];

    }

    out<<s;

    return 0;
}