Pagini recente » Cod sursa (job #2076763) | Cod sursa (job #1380769) | Cod sursa (job #3254768) | Cod sursa (job #3213223) | Cod sursa (job #3211924)
#include <fstream>
#include <deque>
using namespace std;
ifstream cin("deque.in");
ofstream cout("deque.out");
int n,k;
long long s;
deque<pair<int,int>>d;
int main()
{
cin>>n>>k;
int x;
for(int i=0;i<k;i++)
{
cin>>x;
while(!d.empty() && d.back().first>=x)
d.pop_back();
d.push_back({x,i});
}
s+=d.front().first;
for(int i=k;i<n;i++)
{
cin>>x;
while(!d.empty() && d.back().first>=x)
d.pop_back();
d.push_back({x,i});
while(d.front().second<=i-k)
d.pop_front();
s+=d.front().first;
}
cout<<s;
return 0;
}