Cod sursa(job #2588977)

Utilizator tester1234abc abcdd tester1234 Data 25 martie 2020 17:04:50
Problema Deque Scor 20
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.61 kb
#include <iostream>
#include <fstream>
#include <deque>
using namespace std;
int main ()
{
    ifstream in;
    in.open("deque.in");
    ofstream out;
    out.open("deque.out");

    deque <int> deq;
    long long sum = 0;
    int n, k, a[50005];
    in>>n>>k;
    for(int i = 1; i <= n; i++)
        in>>a[i];
    for(int i = 1; i <= n; i++)
    {
        while (!deq.empty() && a[i] <= a[deq.back()])
            deq.pop_back();
        deq.push_back(i);
        if(deq.front() == i-k)
            deq.pop_front();
        if(i >= k)
            sum += a[deq.front()];
    }
    out<<sum;

}