Cod sursa(job #2889481)

Utilizator catarau.bianca.Bianca Catarau catarau.bianca. Data 12 aprilie 2022 20:11:57
Problema Deque Scor 25
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.7 kb
#include <bits/stdc++.h>

using namespace std;

ifstream f("deque.in");
ofstream g("deque.out");

int v[5000001], n, nr_el_secventa;
deque<int> d;

void citire(){
    f >> n >> nr_el_secventa;
    for (int i=1; i<=n; i++)
        f>>v[i];
}
int deq(){
    int sum=0;
    
    for (int poz=1; poz<=n; poz++)
    {
        while (!d.empty() && v[poz]<=v[d.back()]){
                d.pop_back(); 
        }
        
        d.push_back(poz);    
 
        while (d.front() <= poz-nr_el_secventa ) 
            d.pop_front(); 

        if (poz-nr_el_secventa >= 0) 
            sum = sum + v[d.front()]; 
    }
    return sum;
}
int main()
{
    citire();
    g<<deq();
    
}