Pagini recente » Cod sursa (job #391383) | Solutia problemei shoturi | Cod sursa (job #295065) | Cod sursa (job #441663) | Cod sursa (job #2057221)
#include <fstream>
using namespace std;
const int N = 5000001;
int d[N],v[N];
int main()
{
ifstream in("deque.in");
ofstream out("deque.out");
int i,n,k,st,dr;
long long sum = 0;
in >> n >> k;
st = 0;
dr =-1;
for(i=0;i<n;i++){
in >> v[i];
if(st <= dr && d[st] == i-k){
st++;
}
while(st<=dr && v[i] <=v[d[dr]]){
dr--;
}
d[++dr]=i;
if(i>=k-1){
sum +=v[d[st]];
}
}
out << sum;
return 0;
}