Pagini recente » Cod sursa (job #886747) | Cod sursa (job #1751427) | Cod sursa (job #551127) | Cod sursa (job #1264967) | Cod sursa (job #3215062)
#include <fstream>
#include <vector>
#include <queue>
#include <deque>
using namespace std;
using pii = pair<int,int>;
ifstream cin("deque.in");
ofstream cout("deque.out");
deque <int> dq;
int n;
const int nmax = 5e6 + 1;
int v[nmax] , k;
signed main()
{
cin >> n >> k;
long long sum = 0;
for(int i = 1 ; i <= n ; ++i)
{
cin >> v[i];
while(!dq.empty() && dq.front() <= i - k)
{
dq.pop_front();
}
while(!dq.empty() && v[dq.back()] >= v[i]) dq.pop_back();
dq.push_back(i);
if(i>=k) sum += v[dq.front()];
}
cout << sum << '\n';
return 0;
}