Pagini recente » Cod sursa (job #1352303) | Cod sursa (job #573788) | Cod sursa (job #1731505) | Cod sursa (job #3152339) | Cod sursa (job #2543637)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("deque.in");
ofstream fout("deque.out");
struct nr{
int val,poz;
};
deque<nr> v;
int main()
{
int i,n,k,S = 0;
fin>>n>>k;
nr aux;
for(i = 1; i <= n; i++){
fin>>aux.val;
aux.poz = i;
if(v.empty()){
v.push_back(aux);
}else{
while(!v.empty() && (v.back().val >= aux.val)){
v.pop_back();
}
v.push_back(aux);
if(v.front().poz == i-k){
v.pop_front();
}
if(i >= k){
S += v.front().val;
}
}
}
fout<<S<<endl;
return 0;
}