Cod sursa(job #2124977)

Utilizator AndreiD31Dragan Andrei AndreiD31 Data 7 februarie 2018 19:34:03
Problema Deque Scor 25
Compilator cpp Status done
Runda Arhiva educationala Marime 0.52 kb
#include <fstream>
#include <climits>
#include <deque>
using namespace std;
ifstream f("deque.in");
ofstream g("deque.out");

deque <int> d;

int n,k,i,s,v[5000001];
int main()
{
    f>>n>>k;
    for(i=1;i<=n;i++)f>>v[i];


    d.push_back(1);

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

      while(d.size()!=0&&v[d.back()]>v[i])
      {
          d.pop_back();
      }

      d.push_back(i);

      if(d.back()-d.front()>=k){d.pop_front();}

      if(i>=k){s=s+v[d.front()];}


    }
    g<<s;
    return 0;
}