제출 #1218258

#제출 시각아이디문제언어결과실행 시간메모리
1218258elotelo966선물상자 (IOI15_boxes)C++20
50 / 100
23 ms4168 KiB
#include <bits/stdc++.h> #include "boxes.h" using namespace std; //#define int long long #define OYY LLONG_MAX #define faster ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL); #define fi first #define se second #define FOR for(int i=1;i<=n;i++) #define mid (start+end)/2 #define pb push_back #define lim 200005 typedef long long lo; lo dp1[lim],dp2[lim]; long long delivery(int N, int K, int L, int p[]) { dp1[0]=dp2[N+1]=0; lo cev=LLONG_MAX; for(int i=1;i<=N;i++){// baştan int l=max(0,i-K); dp1[i]=(lo)dp1[l]+p[i-1]+min(p[i-1],L-p[i-1]); } for(int i=N;i>=1;i--){ int r=min(N+1,i+K); dp2[i]=(lo)dp2[r]+L-p[i-1]+min(p[i-1],L-p[i-1]); } for(int i=1;i<=N;i++){ //cout<<dp1[i]<<" "<<dp2[i]<<endl; cev=min(cev,(lo)dp1[i]+dp2[i+1]); cev=min(cev,(lo)dp1[i-1]+dp2[i]); } return cev; } //~ int main(){ //~ faster //~ int n,k,l; //~ cin>>n>>k>>l; //~ int dizi[n]; //~ for(int i=0;i<n;i++)cin>>dizi[i]; //~ cout<<delivery(n,k,l,dizi)<<'\n'; //~ return 0; //~ }
#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...