This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
using namespace std;
long long l[10000005], r[10000005];
long long delivery(int N, int K, int L, int p[])
{
for (int i=0; i<K; i++)
l[i]=p[i]*2;
for (int i=K; i<N; i++)
l[i]=l[i-K]+p[i]*2;
// cout << "l: ";
// for (int i=0; i<N; i++)
// cout << l[i] << ' ';
// cout << '\n';
for (int i=0; i<K; i++)
r[i]=(L-p[N-i-1])*2;
for (int i=K; i<N; i++)
r[i]=r[i-K]+(L-p[N-i-1])*2;
// cout << "r: ";
// for (int i=0; i<N; i++)
// cout << r[i] << ' ';
// cout << '\n';
long long ans=min(min(l[N-1], r[N-1]), min(l[N-K-1]+L, r[N-K-1]+L));
for (long long i=0; i<=N-2; i++)
ans=min(ans, l[i]+r[N-i-2]);
for (long long i=0; i<=N-K-2; i++)
ans=min(ans, l[i]+r[N-K-i-2]+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... |