Submission #1198280

#TimeUsernameProblemLanguageResultExecution timeMemory
1198280pensiveBoxes with souvenirs (IOI15_boxes)C++20
100 / 100
315 ms196184 KiB
#include <bits/stdc++.h> using namespace std; #define ll long long #define REP(a,i,n) for (ll i=a;i<n;i++) const int mx = 1e7; ll pre[mx+1], suf[mx+1]; ll delivery(int N, int K, int l, int positions[]) { ll L = l; REP(0, i, N) { pre[i] = min(L, 2* (ll)positions[i]); if (i>=K) { pre[i] += pre[i-K]; } } ll ans = pre[N-1]; for (int i=N-1;i>=0;i--) { suf[i] = min(2*(L-positions[i]), L); if (i <= N-K-1) { suf[i] += suf[i+K]; } ans = min(ans, ((i==0) ? 0LL : pre[i-1]) +suf[i]); } /*REP(0,i,N) { cout << pre[i] << "\t" << suf[i] << endl; }*/ 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...