Cod sursa(job #2936874)

Utilizator brianabucur11Briana Bucur brianabucur11 Data 9 noiembrie 2022 17:20:37
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda cnilc1_2-dq Marime 0.58 kb
#include <bits/stdc++.h>

using namespace std;

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

deque <int> q;
long long n, k, v[5000005], sum;

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