Pagini recente » Cod sursa (job #2610476) | Cod sursa (job #154031) | Cod sursa (job #879804) | Cod sursa (job #153507) | Cod sursa (job #3237357)
#pragma GCC optimize("O3,unroll-loops")
#include<bits/stdc++.h>
using namespace std;
ifstream F("deque.in");
ofstream G("deque.out");
#define Z 4096
int n,k,p=Z,q,i,a[5000001],j;
deque<int> d;
long long z;
char s[Z],t[Z];
inline char A()
{
if(p==Z)
F.read(s,Z),p=0;
return s[p++];
}
int B()
{
char c;
for(c=A();!isdigit(c)&&c!='-';c=A());
int n=0,r=1;
if(c=='-')
r=-1,c=A();
for(;isdigit(c);n=n*10+c-48,c=A());
return n*r;
}
int main()
{
for(n=B(),k=B(),i=1;i<=n;a[i++]=B());
for(i=1;i<=k;d.push_back(i++))
for(;!d.empty()&&a[d.back()]>a[i];d.pop_back());
for(z+=a[d.front()],i=k+1;i<=n;d.push_back(i++),z+=a[d.front()]) {
for(++j;!d.empty()&&d.front()<=j;d.pop_front());
for(;!d.empty()&&a[d.back()]>a[i];d.pop_back());
}
return G<<z,0;
}