Pagini recente » Cod sursa (job #1196164) | Cod sursa (job #1963194) | Cod sursa (job #2518142) | Cod sursa (job #468522) | Cod sursa (job #2673905)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("deque.in");
ofstream fout("deque.out");
long long sum = 0;
int n,k,i;
deque <int> coada;
int main (){
fin>>n>>k;
int a[n];
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;
}