Pagini recente » Cod sursa (job #962909) | Cod sursa (job #12467) | Cod sursa (job #484240) | Cod sursa (job #2341258) | Cod sursa (job #2889470)
#include<fstream>
#include<iostream>
using namespace std;
ifstream f("deque.in");
ofstream g("deque.out");
int v[5000001],deq[5000001];
int n,k,st,dr;
long long Smin;
int main ()
{
int i;
int st = 1, dr = 0;
f>>n>>k;
for(i=1;i<=n;i++)
f>>v[i];
for(i = 1; i <=n; i++){
while(dr >= st && v[i] <= v[deq[dr]]) dr--;
dr++;
deq[dr] = i;
if(i >= k){
Smin+= v[deq[st]];
if(deq[st] == i - k + 1) st++;
}
}
g<<Smin;
f.close();
g.close();
return 0;
}