Cod sursa(job #2723840)

Utilizator dascalu_maraDascalu Mara Elena dascalu_mara Data 15 martie 2021 18:22:43
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.58 kb
//
//  main.cpp
//  deque
//
//  Created by Mara Dascalu on 15/03/2021.
//

#include <iostream>
#include <fstream>

using namespace std;

ifstream input("deque.in");
ofstream output("deque.out");

int n, k, st, dr, v[5000001], deq[5000001];
long long  sum = 0;

int main()
{
    input>>n>>k;
    for (int i = 1; i <= n; ++i)
        input>>v[i];
    st = 1;
    dr = 0;
    for (int i = 1; i <= n; ++i)
    {
        while (st <= dr && v[i] < v[deq[dr]]) --dr;
        deq[++dr] = i;
        if (i - k == deq[st] && st <= dr) ++st;
        if(i >= k) sum += v[deq[st]];
    }
    output<<sum;
}