Submission #237885

#TimeUsernameProblemLanguageResultExecution timeMemory
237885rama_pangBoxes with souvenirs (IOI15_boxes)C++14
10 / 100
6 ms384 KiB
#include "boxes.h" #include <bits/stdc++.h> using namespace std; long long delivery(int N, int K, int L, int p[]) { vector<long long> dpL(N); vector<long long> dpR(N); for (int i = 0; i < N; i++) { dpL[i] = min(p[i], L - p[i]) + p[i] + (i - K < 0 ? 0 : dpL[i - K]); } for (int i = N - 1; i >= 0; i--) { dpR[i] = min(p[i], L - p[i]) + (L - p[i]) + (i + K >= N ? 0 : dpR[i + K]); } long long ans = min(dpL[N - 1], dpR[0]); for (int i = 0; i + 1 < N; i++) { ans = min(ans, dpL[i] + dpR[i + 1]); } for (int i = -1; i <= N; i++) { long long cost = min((i < 0 ? 0 : dpL[i]) + L + (i + K + 1 >= N ? 0 : dpR[i + K + 1]), (i >= N ? 0 : dpR[i]) + L + (i - K - 1 < 0 ? 0 : dpL[i - K - 1])); ans = min(ans, cost); } 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...