Pagini recente » Profil Yuri_titus | Cod sursa (job #177536) | Istoria paginii utilizator/spiridusulvesel | Statistici Grigore Emil (Emilica) | Cod sursa (job #2912892)
#include <fstream>
#include <list>
using namespace std;
ifstream cin("deque.in");
ofstream cout("deque.out");
list <int> l;
int v[5000005];
int main()
{
int n,k,a;
long long sum=0;
cin>>n>>k;
for(int i=1; i<=n; i++)
{
cin>>a;
v[i]=a;
while(l.empty()==0&&a<=v[l.back()])
l.pop_back();
l.push_back(i);
if(l.front()==i-k)
l.pop_front();
if(i>=k)
sum+=v[l.front()];
}
cout<<sum;
return 0;
}