#include "boxes.h"
#include <bits/stdc++.h>
using namespace std;
#define pb push_back
using ll = long long;
using pr = pair<ll, int>;
const int INF = 1e9+7, MOD = 1e9+7;
vector<int> a;
long long delivery(int n, int k, int l, int p[]) {
a.resize(n+1, 0);
for (int i = 0; i < n; i++) a[i+1] = p[i];
vector<ll> dp(n+1, INF);
dp[0] = 0;
multiset<pr> cur;
cur.insert({0, 0});
for (int i = 1; i <= n; i++) {
if (i > k) {
cur.erase(cur.find({dp[i-k-1], i-k-1}));
}
// for (auto j : cur) cout << j.first << ' ';
cout << '\n';
auto [mn, ind] = *cur.begin();
int d = min({a[i] * 2, (l - ind) * 2, l});
dp[i] = mn + d;
cur.insert({dp[i], i});
}
// cout << dp[n];
return dp[n];
}