Submission #1255343

#TimeUsernameProblemLanguageResultExecution timeMemory
1255343lambd47Boxes with souvenirs (IOI15_boxes)C++20
100 / 100
348 ms196112 KiB
#include "boxes.h" #include <bits/stdc++.h> using namespace std; #define ll long long ll delivery(int n,int k, int l, int positions[]){ const ll mod=1e15+7; vector<ll> dpp(n+7); vector<ll> dps(n+7); for(int i=0;i<n;i++){ dpp[i]=2*positions[i]; if(i>=k){ dpp[i]+=dpp[i-k]; } } for(int i=n-1;i>=0;i--){ dps[i]=2*(l-positions[i]); if(i+k<n){ dps[i]+=dps[i+k]; } } ll resp=mod; ll ida;ll volta; for(int i=-1;i<n;i++){ ida=0;volta=0; if(i!=-1){ ida=dpp[i]; } if(i!=n-1){ volta=dps[i+1]; } resp=min(resp,ida+volta); } for(int i=-1,j=k;j<=n;j++,i++){ ida=0;volta=0; if(i!=-1){ ida=dpp[i]; } if(j!=n){ volta=dps[j]; } // cout<<i<<" "<<ida<<" "<<volta<<"\n"; resp=min(resp,ida+l+volta); } return resp; };
#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...