Submission #364626

#TimeUsernameProblemLanguageResultExecution timeMemory
364626BartolMBoxes with souvenirs (IOI15_boxes)C++17
100 / 100
565 ms260784 KiB
#include "boxes.h" #include <bits/stdc++.h> using namespace std; #define X first #define Y second #define mp make_pair #define pb push_back typedef long long ll; typedef pair <int, int> pii; typedef pair <int, pii> pip; typedef pair <pii, int> ppi; typedef pair <ll, ll> pll; const int INF=0x3f3f3f3f; const int N=1e7+5; const ll MAX=(ll)INF*INF; int p[N]; ll pref[N], suff[N]; ll delivery(int n, int k, int l, int poc[]) { for (int i=0; i<n; ++i) p[i+1]=poc[i]; pref[0]=0; for (int i=1; i<=n; ++i) { int dod=min(l, 2*p[i]); pref[i]=pref[max(0, i-k)]+dod; } suff[n+1]=0; for (int i=n; i>=1; --i) { int dod=min(l, 2*(l-p[i])); suff[i]=suff[min(n+1, i+k)]+dod; } ll sol=min(pref[n], suff[1]); for (int i=1; i<=n; ++i) sol=min(sol, pref[i]+suff[i+1]); return sol; }
#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...