Cod sursa(job #2713970)

Utilizator galacticaBattlestar galactica Data 1 martie 2021 00:13:15
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.7 kb
//
//  main.cpp
//  deque
//
//  Created by Ionut Bogdanescu on 28.02.21.
//

#include <fstream>
using namespace std;

int deq[5000000], pos[5000000];

int main() {
    ifstream in("deque.in");
    ofstream out("deque.out");
    int N, K;
    int left = 0, right = -1;
    long long sum = 0;
    
    in >> N >> K;
    for(int i = 0; i < N; i++){
        int aux;
        in >> aux;
        while (right >= left && aux < deq[right]) {
            right--;
        }
        ++right;
        deq[right] = aux;
        pos[right] = i;

        if(i >= K-1) {
            sum+= deq[left];
        }
        if(pos[left] <= i-K+1){
            ++left;
        }
    }
    
    
    out << sum << "\n";
    return 0;
}