Pagini recente » Cod sursa (job #1473081) | Cod sursa (job #1993905) | Cod sursa (job #3262059) | Cod sursa (job #3230118) | Cod sursa (job #2668682)
#include <bits/stdc++.h>
using namespace std;
ifstream fin ("deque.in");
ofstream fout ("deque.out");
int main()
{
int n,k;
int i;
fin >>n>>k;
int v[5000000];
for (i=0;i<n;++i)
fin >>v[i];
long long s=0;
deque < int >DQ;
for (i=0;i<n;++i)
{
while (!DQ.empty () && v[DQ.back()]>=v[i])
{
DQ.pop_back ();
}
DQ.push_back (i);
if (i>=k-1)
{
s+=v[DQ.front ()];
}
int fin=i-k+1;
if (DQ.front ()==fin)
{
DQ.pop_front ();
}
}
fout <<s;
return 0;
}