Cod sursa(job #2194841)

Utilizator andaraluca2001Anda Epure andaraluca2001 Data 14 aprilie 2018 14:04:54
Problema Deque Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.53 kb
#include <iostream>
#include <deque>
#include <fstream>

using namespace std;
const int MAX=5e6+1;
deque<int>q;

int n, k, v[MAX];
long long ans;

int main()
{
    ifstream in("deque.in");
    ofstream out("deque.out");

   in>>n>>k;

   for(int i=1;i<=n;i++) cin>>v[i];

   for(int i=1;i<=n;i++)
   {
       while(!q.empty() && v[q.back()]>=v[i])
         q.pop_back();
         q.push_back(i);
         if(q.front()==i-k) q.pop_front();
         if(i>=k) ans+=v[q.front()];
   }

   out<<ans;
    return 0;
}