#include "boxes.h"
#include "bits/stdc++.h"
using namespace std;
const int maxn = 1e6 + 10;
long long n, k, l;
long long pref[maxn], suff[maxn];
long long delivery(int N, int K, int L, int p[])
{
n = N;
k = K;
l = L;
long long ans = n * l;
if(n < k)
{
ans = min(ans, l);
}
for (int i = 0; i < n; ++ i)
{
pref[i] = p[i] * 2;
if(i - k >= 0)
pref[i] += pref[i - k];
}
for (int i = n-1; i >= 0; -- i)
{
suff[i] = (l - p[i]) * 2;
if(i + k < n)
{
suff[i] += suff[i + k];
}
}
ans = min(ans, min(pref[n-1], suff[0]));
for (int i = 0; i < n; ++ i)
{
ans = min(ans, pref[i] + suff[i+1]);
}
if(n < k)return ans;
for (int i = 0; i < n; ++ i)
{
ans = min(ans, l + pref[i] + suff[i + k + 1]);
}
return ans;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |