Submission #72811

#TimeUsernameProblemLanguageResultExecution timeMemory
72811square1001Boxes with souvenirs (IOI15_boxes)C++14
50 / 100
67 ms23864 KiB
#include "boxes.h" #include <vector> #include <algorithm> using namespace std; long long d[10000009]; long long delivery(int N, int K, int L, int p[]) { sort(p, p + N); int ls = 0; for(int i = 0; i < N; ++i) { if(2 * p[i] < L) ++ls; } for(int i = 1; i <= ls; ++i) { d[i] = (i < K ? 0 : d[i - K]) + 2 * p[i - 1]; } for(int i = 1; i <= N - ls; ++i) { d[i + ls + 1] = (i < K ? 0 : d[i - K + ls + 1]) + 2 * (L - p[N - i]); } long long ret = d[ls] + d[N + 1]; for(int i = ls - K + 1; i <= ls && i <= N - K; ++i) { int pl = N - K - i + ls + 1; if(pl < 0 || pl >= N + 2) continue; ret = min(ret, d[i] + d[N - K - i + ls + 1] + L); } return ret; }
#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...