Pagini recente » Cod sursa (job #2761717) | Cod sursa (job #2319154) | Cod sursa (job #251988) | Cod sursa (job #2547011) | Cod sursa (job #3231481)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("deque.in");
ofstream fout("deque.out");
struct poz{
int v,in;
};
deque<poz> q;
long long n,s,k,a;
int main()
{
fin>>n>>k;
for(int i=1;i<=k;++i)
{
fin>>a;
while(q.empty()==false && a<q.back().v)
q.pop_back();
q.push_back({a,i});
}
s=q.front().v;
for(int i=k+1;i<=n;++i)
{
fin>>a;
while(q.empty()==false && q.front().in<i-k+1)
q.pop_front();
while(q.empty()==false && a<q.back().v)
q.pop_back();
q.push_back({a,i});
s=s+q.front().v;
}
fout<<s;
return 0;
}