Pagini recente » Cod sursa (job #2556630) | Cod sursa (job #1249135) | Cod sursa (job #2530160) | Cod sursa (job #404994) | Cod sursa (job #2051902)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("deque.in");
ofstream fout("deque.out");
int s, a[5000001], i,x,k,n;
deque<pair<int,int>> d;
int main()
{
fin>>n>>k;
for (i=1;i<=n;i++)
fin>>a[i];
for (i=1;i<=k;i++)
{while (!d.empty()&&d.front().first>a[i])
d.pop_front();
d.push_front(make_pair(a[i], i));
}
auto t=d.back();
s+=t.first;
for (i=k+1;i<=n;i++)
{
auto t =d.back();
if (t.second<=i-k)
d.pop_back();
while(!d.empty()&&d.front().first>a[i])
d.pop_front();
d.push_front(make_pair(a[i],i));
t=d.back();
s+=t.first;
}
fout<<s;
return 0;
}