Pagini recente » Cod sursa (job #1342368) | Cod sursa (job #740040) | Cod sursa (job #1172212) | Cod sursa (job #2151853) | Cod sursa (job #2013786)
#include <bits/stdc++.h>
using namespace std;
struct num{
int val;
int ind;
};
deque<num> deq;
ifstream f("deque.in");
ofstream g("deque.out");
int main()
{
int n;
f >> n;
int k;
f >> k;
long long ans = 0;
for(int i = 0; i < n; ++i){
num a;
f >> a.val;
a.ind = i + k;
while(deq.size() && deq.back().val > a.val){
deq.pop_back();
}
while(deq.front().ind <= i && deq.size()){
deq.pop_front();
}
deq.push_back(a);
if(i >= k - 1) ans += 1LL*deq.front().val;
}
g << ans;
}