Pagini recente » Cod sursa (job #2381641) | Borderou de evaluare (job #2541959) | Cod sursa (job #2913971) | Cod sursa (job #2738448) | Cod sursa (job #2570362)
#include <bits/stdc++.h>
using namespace std;
ifstream in("deque.in");
ofstream out("deque.out");
#define int long long
deque < pair <int,int> > dq;
main()
{
int n, k;
in >> n >> k;
int rez = 0;
for(int i = 1; i <= n; i++)
{
int x;
in >> x;
if(!dq.empty())
while(x <= dq.back().first)
{dq.pop_back();
if(dq.empty())
break;
}
dq.push_back({x,i});
if(i >= k)
rez += dq.front().first;
if(dq.front().second + k - 1 == i)
{
dq.pop_front();
}
}
out << rez;
return 0;
}