Pagini recente » Cod sursa (job #2065572) | Cod sursa (job #2289458) | Cod sursa (job #2074407) | Cod sursa (job #505942) | Cod sursa (job #2887467)
#include <bits/stdc++.h>
using namespace std;
ifstream f("deque.in");
ofstream g("deque.out");
#define cin f
#define cout g
long long n, k, sum = 0;
deque < pair < long long , int > > d;
int main()
{
cin >> n >> k;
long long x; cin >> x;
d.push_back(make_pair(x, 1));
for(int i = 2; i < k; i ++)
{
cin >> x;
while(! d.empty() and x < d.back().first)
d.pop_back();
d.push_back(make_pair(x, i));
}
for(int i = k; i <= n; i ++)
{
cin >> x;
while(! d.empty() and x < d.back().first)
d.pop_back();
d.push_back(make_pair(x, i));
sum += d.front().first;
if(i - d.front().second + 1 >= k)
d.pop_front();
}
cout << sum;
return 0;
}