Cod sursa(job #2939975)

Utilizator infoPRO1Smoleanu Cristian-Albert infoPRO1 Data 14 noiembrie 2022 16:44:51
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda cnilc1_2-dq Marime 0.6 kb
#include <bits/stdc++.h>

using namespace std;
ifstream g("deque.in");
ofstream f("deque.out");
deque <int> E;
long long int n,l,i,A[5000001],s;
int main()
{
    g>>n>>l;
    for(i=1;i<=n;i++)
    {
        g>>A[i];
    }
    E.push_back(1);
    for(i=1;i<=n;i++)
    {
        while(!E.empty() && A[i]<=A[E.back()])
        {
           E.pop_back();
        }
        E.push_back(i);
        if(i>=l)
        {
          if(!E.empty() && i-E.front()>=l)
          {
            E.pop_front();
          }
          s=s+A[E.front()];
        }
    }
    f<<s;
    return 0;
}