Pagini recente » Cod sursa (job #3349340) | Cod sursa (job #3344470) | Cod sursa (job #3320540) | Cod sursa (job #3355338) | Cod sursa (job #3328525)
#include <iostream>
#include <vector>
#include <fstream>
#include <deque>
#define cin f
#define cout g
using namespace std;
int k;
ifstream f("deque.in");
ofstream g("deque.out");
int main() {
ios::sync_with_stdio(false);
deque<int> dq;
int n, s = 0;
cin >> n >> k;
vector<int>v(n + 1);
for (int i = 1; i <= n; i++)
{
cin >> v[i];
}
for (int i = 1; i <= n; i++)
{
if (i >= k && dq.front() == i - k)
dq.pop_front();
while (dq.size() && v[dq.back()] > v[i])
{
dq.pop_back();
}
dq.push_back(i);
if (i >= k)
s += v[dq.front()];
}
cout << s;
return 0;
}