Pagini recente » Cod sursa (job #1260610) | Cod sursa (job #2773951) | Cod sursa (job #1941686) | Cod sursa (job #145085) | Cod sursa (job #2926576)
#include <fstream>
#include <map>
#include <climits>
#include <vector>
#include <stack>
#include <queue>
#include <set>
#include <algorithm>
using namespace std;
#define ll long long
#define ull unsigned long long
const int MOD = 100003;
ofstream cout("deque.out");
ifstream cin("deque.in");
int main()
{
ios_base::sync_with_stdio(false), cin.tie(0);
deque<int> dQ;
int n, k; cin >> n >> k;
vector<int> v(n);
for(int z = 0; z < n; z++)
{
cin >> v[z];
}
ll sum = 0;
dQ.push_back(0);
for(int z = 1; z < n; z++)
{
while(!dQ.empty() && v[dQ.back()] >= v[z])
{
dQ.pop_back();
}
dQ.push_back(z);
if(dQ.front() < z-k+1)
{
dQ.pop_front();
}
if(z >= k-1)
{
sum += v[dQ.front()];
}
}
cout << sum;
}