Pagini recente » Cod sursa (job #2230157) | Cod sursa (job #2137369) | Cod sursa (job #2577045) | Cod sursa (job #2986041) | Cod sursa (job #2673897)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("deque.in");
ofstream fout("deque.out");
deque <int> coada;
int main (){
int n,k,i,sum=0;
fin>>n>>k;
int a[5000500];
for (i=1;i<=n;i++)
fin>>a[i];
for (i=1;i<=k;i++){
while (!coada.empty()){
if (a[i]>=coada.back())
break;
coada.pop_back();
}
coada.push_back(a[i]);
}
sum+=coada.front();
for (i=k+1;i<=n;i++){
while (!coada.empty()){
if (a[i]>=coada.back())
break;
coada.pop_back();
}
coada.push_back(a[i]);
if (coada.front()==a[i-k])
coada.pop_front();
sum+=coada.front();
}
fout<<sum;
}