Submission #169885

#TimeUsernameProblemLanguageResultExecution timeMemory
169885AlexLuchianovBoxes with souvenirs (IOI15_boxes)C++14
10 / 100
10 ms504 KiB
#include "boxes.h" using ll = long long; #define MIN(a, b) (((a) < (b)) ? (a) : (b)) #define MAX(a, b) (((a) < (b)) ? (b) : (a)) int const nmax = 10000000; ll const inf = 1000000000000000000LL; ll pref[1 + nmax], suff[1 + nmax]; long long delivery(int N, int K, int L, int p[]) { for(int i = 0; i < N; i++) if(i < K) pref[i] = p[i]; else pref[i] = pref[i - K] + p[i]; for(int i = N - 1; 0 <= i; i--) if(i + K < N) suff[i] = suff[i + K] + (L - p[i]); else suff[i] = (L - p[i]); ll result = inf; for(int i = 0; i <= N; i++) { ll cost = 0; if(0 < i) cost += pref[i - 1]; if(i < N) cost += suff[i]; if(cost < result) result = cost; } return 2 * result; }
#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...