Submission #519290

#TimeUsernameProblemLanguageResultExecution timeMemory
519290pavementBoxes with souvenirs (IOI15_boxes)C++17
20 / 100
1 ms384 KiB
#include "boxes.h" #include <bits/stdc++.h> using namespace std; typedef long long ll; int start; ll ans, pf[1000005], sf[1000005]; ll delivery(int N, int K, int L, int p[]) { start = N; for (int i = 0; i < N; i++) pf[i] = (i - K >= 0 ? pf[i - K] : 0ll) + 2ll * (ll)p[i]; for (int i = N - 1; i >= 0; i--) sf[i] = (i + K < N ? sf[i + K] : 0ll) + 2ll * (ll)(L - p[i]); for (int i = 0; i < N; i++) { if ((ll)L + (i > 0 ? pf[i - 1] : 0ll) < (ll)pf[min(N - 1, i + K - 1)]) { start = i; break; } } ans = LLONG_MAX; for (int i = 0; i <= N; i++) ans = min(ans, (ll)(i ? pf[i - 1] : 0) + (ll)sf[i]); for (int i = start; i <= N; i += K) ans = min(ans, (start > 0 ? pf[start - 1] : 0ll) + sf[i] + (ll)(i - start) / (ll)K * (ll)L); return ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...