Cod sursa(job #2059077)

Utilizator stefii_predaStefania Preda stefii_preda Data 6 noiembrie 2017 17:18:19
Problema Deque Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include <fstream>

using namespace std;
ifstream in ("deque.in");
ofstream out ("deque.out");

const int N = 5000005;
int v[N], deq[N];
long long Suma;

int main()
{
    int n, k, i;
    in >> n >> k;
    for(i = 1; i <= n; i++)
        in >> v[i];
    int inc = 1, sf = 0;
    for(i = 1; i <= n; i++)
    {
        while(inc <= sf && v[i] <= v[deq[sf]])
            sf--;
        deq[++sf] = i;
        if(deq[inc] == i-k)
            inc++;
        if(i >= k)
            Suma += v[deq[inc]];
    }
    out << Suma;
    return 0;
}