Pagini recente » Cod sursa (job #708813) | Cod sursa (job #2567411) | Cod sursa (job #1905002) | Cod sursa (job #3139588) | Cod sursa (job #2713970)
//
// 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;
}