#include <bits/stdc++.h>
using namespace std;
long long delivery(int N, int K, int L, int positions[]) {
long long rot1[N+1] = {};
long long rot2[N] = {};
for (int i = 0; i < min(K,N); i++) {
//wack st5 edge case
rot1[i+1] = 2ll*(long long)positions[i];
rot2[i+1] = 2ll*(long long)(L-positions[N-i-1]);
}
for (int i = K; i < N; i++) {
int x = (i-1)/K;
x *= K;
rot1[i+1] = rot1[x]+2ll*(long long)positions[i];
rot2[i+1] = rot2[x]+2ll*(long long)(L-positions[N-i-1]);
}
long long ans = 1e18;
for (int i = 0; i <= N; i++) {
ans = min(ans,rot1[i]+rot2[N-i]);
}
for (int i = 0; i <= N-K; i++) {
ans = min(ans,rot1[i]+rot2[N-i-K]+L);
}
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... |