Pagini recente » Cod sursa (job #1707585) | Cod sursa (job #31252) | Cod sursa (job #1623282) | Cod sursa (job #372947) | Cod sursa (job #1404770)
#include <bits/stdc++.h>
#define ll long long
using namespace std;
deque<ll>q;
ll v[5000005], i, n, k, sol;
int main()
{
freopen("deque.in", "r", stdin);
freopen("deque.out", "w", stdout);
scanf("%lld%lld", &n, &k);
for(i = 1; i < k; i++)
{
scanf("%lld", &v[i]);
while(q.size() && v[q.back()] >= v[i])
q.pop_back();
q.push_back(i);
}
for(; i <= n; i++)
{
scanf("%lld", &v[i]);
while(q.size() && v[q.back()] >= v[i])
q.pop_back();
q.push_back(i);
if(i - q.front() == k)
q.pop_front();
sol += v[q.front()];
}
printf("%lld\n", sol);
return 0;
}