Pagini recente » Cod sursa (job #3143226) | Cod sursa (job #2872880) | Cod sursa (job #2415636) | Cod sursa (job #2904499) | Cod sursa (job #565972)
Cod sursa(job #565972)
#include <cstdio>
#include <deque>
#define Lmax 5000000
using namespace std;
int n,k;
long long s=0;
int a[Lmax];
FILE *fin=freopen("deque.in","r",stdin);
FILE *fout=freopen("deque.out","w",stdout);
deque <int> c;
void ceva()
{
for(int i=0;i<n;i++)
{
scanf("%d",&a[i]);
while(!c.empty() && a[c.back()]>a[i])
c.pop_back();
c.push_back(i);
if(c.front()<=i-k)
c.pop_front();
if(i>=k-1)
s+=a[c.front()];
}
}
int main()
{
scanf("%d %d", &n, &k);
ceva();
printf("%lld\n",s);
return 0;
}