Pagini recente » Cod sursa (job #1531735) | Cod sursa (job #1097054) | Cod sursa (job #737121) | Clasament oni2011_9_2 | Cod sursa (job #3128197)
#include<fstream>
#include<deque>
using namespace std;
int main(){
long long ssum=0,n,k;
int * A=new int[5000000];
deque<int> doubleq;
ifstream cin("deque.in");
ofstream cout("deque.out");
cin>>n>>k;
for( int i=0;i<n;i++){
cin>>A[i];
if(doubleq.size()&&doubleq.front()==i-k){
doubleq.pop_front();
}
while(doubleq.size()&&A[doubleq.back()]>A[i]){
doubleq.pop_back();
}
doubleq.push_back(i);
if(i>k-2){
ssum+=A[doubleq.front()];
}
}
cout<<ssum;
}