Pagini recente » Cod sursa (job #990936) | Cod sursa (job #749396) | Cod sursa (job #2284767) | Cod sursa (job #2220591) | Cod sursa (job #2570302)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("deque.in");
ofstream fout("deque.out");
int n,k,i,v[5000010];
long long sol;
deque< pair<int,int> > q;
int main() {
fin>>n>>k;
for (i=1;i<=n;i++)
fin>>v[i];
for (i=1;i<=n;i++) {
while (!q.empty()&&v[i]<q.back().first)
q.pop_back();
q.push_back({v[i],i});
while (q.size()>k||(i-q.front().second+1>k))
q.pop_front();
if (i>=k)
sol+=1LL*q.front().first;
}
fout<<sol;
return 0;
}