Cod sursa(job #2583445)

Utilizator pitcovicinataliaPitcovici Natalia pitcovicinatalia Data 18 martie 2020 12:09:07
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.6 kb
#include <fstream>

using namespace std;

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

int v[5000001],d[5000001];
int main()
{
    int n,k;
    long long s(0);
    in>>n>>k;
    int st=0,dr=-1;
    for(int i = 0; i < n; i++)
    {
        in >> v[i];
        if(st <= dr && d[st]== i - k)
        {
            st++;
        }
        while(st <= dr &&  v[d[dr]] >= v[i])
        {
            dr--;
        }
        d[++dr] = i;

        if(i >=k -1)
        {
            s += v[d[st]];
        }

    }
    in.close();
    out<<s;
    out.close();
    return 0;
}