Submission #1261013

#TimeUsernameProblemLanguageResultExecution timeMemory
1261013JuanJLBoxes with souvenirs (IOI15_boxes)C++20
100 / 100
348 ms196288 KiB
#include "boxes.h" #include <bits/stdc++.h> #define fst first #define snd second #define pb push_back #define forn(i,a,b) for(int i = a; i< b;i++) #define SZ(x) (int)x.size() #define ALL(x) x.begin(),x.end() #define mset(a,v) memset(a,v,sizeof(a)) #define FIN ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); using namespace std; typedef long long ll; long long delivery(int N, int K, int L, int p[]) { vector<ll> izq(N,0); vector<ll> der(N,0); forn(i,0,N){ izq[i]=min(p[i]*2ll, (ll)p[i]+(L-p[i])); if(i-K>=0){ izq[i]+=izq[i-K]; } } for(int i = N-1; i>=0; i--){ der[i]=min((L-p[i])*2ll, (ll)(L-p[i])+p[i]); if(i+K<N){ der[i]+=der[i+K]; } } ll res = min(izq[N-1],der[0]); forn(i,0,N){ if(i+1<N) res=min(res, izq[i]+der[i+1]); } return res; }
#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...