Pagini recente » Cod sursa (job #2529625) | Cod sursa (job #2490795) | Cod sursa (job #2217559) | Cod sursa (job #1797126) | Cod sursa (job #2808252)
#include <fstream>
#include <deque>
using namespace std;
ifstream fin ("deque.in");
ofstream fout ("deque.out");
const int nmax=5000005;
deque <int>dq;
int a[nmax],n,k;
int main()
{
long long sum=0;
fin >>n>>k;
for (int i=1;i<=n;i++)
{fin >>a[i];
while (!dq.empty() && a[dq.back()]>=a[i])
{dq.pop_back();}
dq.push_back(i);
if (dq.front()<=i-k) {dq.pop_front();}
if (i>=k) {sum=sum+a[dq.front()];}}
fout <<sum<<'\n';
return 0;
}