Pagini recente » Cod sursa (job #1189458) | Cod sursa (job #2625940) | Cod sursa (job #3161328) | Cod sursa (job #467946) | Cod sursa (job #2946054)
#include <fstream>
using namespace std;
ifstream fin("deque.in");
ofstream fout("deque.out");
int v[5000001],c[5000001];
int main()
{
int n,k,st,dr;
long long s=0;
fin>>n>>k;
st=dr=0;
for(int i=1;i<=n;i++){
fin>>v[i];
if(i<k){
while(v[i]<v[c[dr]] && st<=dr)
dr--;
dr++;
c[dr]=i;
}
else{
if(i-k+1>c[st])
st++;
while(v[i]<v[c[dr]] && st<=dr)
dr--;
dr++;
c[dr]=i;
s+=v[c[st]];
}
}
fout<<s;
return 0;
}