Submission #785189

#TimeUsernameProblemLanguageResultExecution timeMemory
785189alexander707070선물상자 (IOI15_boxes)C++14
50 / 100
2017 ms19420 KiB
#include<bits/stdc++.h> #define MAXN 10000007 using namespace std; const long long inf=1e17; int n,k,a[MAXN],w; long long l,r,len; long long dp[MAXN]; long long cost(int from,int to){ l=a[from]; r=w-a[to]; len=a[to]-a[from]; if(l>r)swap(l,r); return min(l+len+r,2*l+2*len); } long long delivery(int N, int K, int L,int P[]){ n=N; k=K; w=L; for(int i=1;i<=n;i++){ a[i]=P[i-1]; } sort(a+1,a+n+1); for(int i=1;i<=n;i++){ dp[i]=inf; for(int f=1;f<=min(i,k);f++){ dp[i]=min(dp[i],dp[i-f]+cost(i-f+1,i)); } } return dp[n]; } /* int main(){ cout<<delivery(3,2,8,{1,2,5})<<"\n"; } */
#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...