Cod sursa(job #2274330)

Utilizator Iorgus08Iorgus Serghei Cicala Iorgus08 Data 1 noiembrie 2018 18:01:29
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.6 kb

#include <iostream>

#include <fstream>



using namespace std;



int dq[5000005];



int main()

{

    ifstream in ("deque.in");

    ofstream out("deque.out");

    int n,k;

    in>>n>>k;

    long long v[n+5];

    for (int i=0;i<n;i++)

    {

        in>>v[i];

    }

    int st=0,dr=-1;

    long long s=0;

    for (int i=0;i<n;i++)

    {

        if (i>=k && dq[st]==i-k)

            st++;

        while(st<=dr && v[i]<=v[dq[dr]])

        {

            dr--;

        }

        dq[++dr]=i;

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

    }

    out<<s;

    in.close();

    out.close();

    return 0;

}