Pagini recente » Cod sursa (job #2946051) | Cod sursa (job #2073509) | Cod sursa (job #2608976) | Cod sursa (job #265968) | Cod sursa (job #2099690)
#include <iostream>
#include <fstream>
#include <deque>
using namespace std;
ifstream fin("deque.in");
ofstream fout("deque.out");
deque <int> dq;
deque <int> idx;
int main()
{
int n, k, x;
long long res = 0;
fin >> n >> k;
for(int i = 0; i < n; ++i)
{
fin >> x;
while(x < dq.back() && dq.size())
{
dq.pop_back();
idx.pop_back();
}
dq.push_back(x);
idx.push_back(i);
while(idx.front() <= i - k)
{
dq.pop_front();
idx.pop_front();
}
if(i >= k-1)
res += dq.front();
}
fout << res << "\n";
return 0;
}