Pagini recente » Cod sursa (job #1797351) | Cod sursa (job #1901995) | Cod sursa (job #577300) | Cod sursa (job #2934776) | Cod sursa (job #3171478)
#include <fstream>
#include <deque>
using namespace std;
ifstream cin("deque.in");
ofstream cout("deque.out");
#define MAXN 5000000
int v[MAXN+1];
deque <int> dq;
int main() {
int n, k;
cin>>n>>k;
int i;
for(i=0; i<k-1; i++)
{
cin>>v[i];
while(dq.size()>0 && v[dq.back()]>=v[i])
dq.pop_back();
dq.push_back(i);
}
long long sum;
sum=0;
for(i=k-1; i<n; i++)
{
cin>>v[i];
if(i-dq.front()==k)
dq.pop_front();
while(dq.size()>0 && v[dq.back()]>=v[i])
dq.pop_back();
dq.push_back(i);
sum+=v[dq.front()];
}
cout<<sum;
return 0;
}