Pagini recente » Cod sursa (job #590566) | Cod sursa (job #2503120) | Cod sursa (job #2417120) | Cod sursa (job #2020275) | Cod sursa (job #1633236)
//============================================================================
// Name : Deq.cpp
// Author :
// Version :
// Copyright : Your copyright notice
// Description : Hello World in C++, Ansi-style
//============================================================================
#include <stdio.h>
#include <deque>
using namespace std;
struct elem{
int i,x;
};
deque<elem> deq;
int n,k,x;
long long sum;
int main() {
freopen("deque.in","r",stdin);
freopen("deque.out","w",stdout);
scanf("%d%d",&n,&k);
for(int i=0;i<n;++i){
scanf("%d",&x);
if(!deq.empty()){
while(deq.back().x>=x){
deq.pop_back();
if(deq.empty())break;
}
}
if(!deq.empty())
if(deq.front().i<i-k+1)
deq.pop_front();
elem aux;
aux.i=i;
aux.x=x;
deq.push_back(aux);
if(i>=k-1)
sum+=deq.front().x;
}
printf("%lld\n",sum);
return 0;
}