제출 #1051202

#제출 시각아이디문제언어결과실행 시간메모리
1051202ArthuroWichBoxes with souvenirs (IOI15_boxes)C++17
100 / 100
431 ms372504 KiB
#include "boxes.h" #include<bits/stdc++.h> #define int long long int using namespace std; int delivery(int32_t N, int32_t K, int32_t L, int32_t P[]) { int ans = INT_MAX, n = N, k = K, l = L; vector<int> p(n+1); for (int i = 1; i <= n; i++) { p[i] = P[i-1]; } vector<int> dpl(n+2, 0), dpr(n+2, 0); for (int i = 1; i <= n; i++) { dpl[i] = 2*p[i]; if (i-k > 0) { dpl[i] += dpl[i-k]; } } for (int i = n; i > 0; i--) { dpr[i] = 2*(l-p[i]); if (i+k <= n) { dpr[i] += dpr[i+k]; } } ans = min(dpl[n], dpr[1]); for (int i = 1; i < n; i++) { ans = min(ans, dpl[i-1]+dpr[i]); } for (int i = 0; i < n; i++) { if (i+k+1 > n+1) { break; } ans = min(ans, dpl[i]+l+dpr[i+k+1]); } 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...