Pagini recente » Cod sursa (job #2404538) | Cod sursa (job #2876054) | Cod sursa (job #1605887) | Cod sursa (job #312766) | Cod sursa (job #3037369)
#include <iostream>
#define MAXIM 5000000
using namespace std;
int main(void)
{
long long suma = 0;
int n, k;
cin >> n >> k;
int *a;
a = new int[MAXIM];
if (a == NULL) {
cout << "Error";
return -1;
}
int *Deque;
Deque = new int[MAXIM];
if (Deque == NULL) {
cout << "Error";
return -1;
}
int st = 1, dr = 0;
for (int i = 0; i < n; i++)
cin >> a[i];
for (int i = 0; i < n; i++) {
while (st <= dr && a[i] <= a[Deque[dr]])
dr--;
Deque[++dr] = i;
if (Deque[st] == i - k)
st++;
if (i >= k - 1)
suma += a[Deque[st]];
}
delete[] a;
delete[] Deque;
cout << suma;
return 0;
}