Pagini recente » Cod sursa (job #1862285) | Cod sursa (job #1044148) | Cod sursa (job #1154026) | Cod sursa (job #1633922) | Cod sursa (job #3328765)
#include <iostream>
#include <vector>
#include <fstream>
#include <deque>
#define cin f
#define cout g
using namespace std;
long long k;
ifstream f("deque.in");
ofstream g("deque.out");
long long main() {
ios::sync_with_stdio(false);
deque<long long> dq;
long long n, s = 0;
cin >> n >> k;
vector<long long>v(n + 1);
for (long long i = 1; i <= n; i++)
{
cin >> v[i];
}
for (long long 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;
}