Submission #1316131

#TimeUsernameProblemLanguageResultExecution timeMemory
1316131khanhphucscratchBoxes with souvenirs (IOI15_boxes)C++20
100 / 100
341 ms196096 KiB
#include "boxes.h" #include<bits/stdc++.h> #define int long long using namespace std; int delivery(int32_t n, int32_t k, int32_t len, int32_t p[]) { vector<int> prefix(n+1), suffix(n+1); for(int i = 0; i < n; i++){ if(i < k) prefix[i] = p[i] + min(p[i], len-p[i]); else prefix[i] = prefix[i-k] + p[i] + min(p[i], len-p[i]); } for(int i = n-1; i >= 0; i--){ if(i+k >= n) suffix[i] = len-p[i] + min(p[i], len-p[i]); else suffix[i] = suffix[i+k] + (len - p[i]) + min(p[i], len-p[i]); } int ans = suffix[0]; for(int i = 0; i < n; i++) ans = min(ans, prefix[i] + suffix[i+1]); if(k < n) return ans; else return min(ans, (int)len); }
#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...