#include <bits/stdc++.h>
using namespace std;
long long delivery(int N, int K, int L, int p[]){
    int cut=L/2, lo, hi;
    long long ans=LLONG_MAX;
    vector<int> a,b;
    for(int i=0;i<N;i++){
        if(cut>=p[i]){
            a.push_back(p[i]);
        }else{
            b.push_back(p[i]);    
        }
    }
    for(int i=0;i<N;i++){
        if(p[i]<=cut){
            lo=i;
        }else{
            hi=i;
            break;
        }
    }  
    long long norm=0;
    for(int i=hi-K; i<=lo+K; i++){
        long long cur=L;
        for(int j=i-1; j>=0; j-=K){
            cur+=p[i]*2;
        }
        for(int j=i+K+1; j<L; j+=K){
            cur+=(L-p[i])*2;    
        }
        ans=min(ans, cur);
    }
    for(int i=int(a.size())-1;i>=0;i-=K){
        norm+=a[i]*2;
    }
    for(int i=0;i<int(b.size());i+=K){
        norm+=(L-b[i])*2;
    }
    //cout<<norm<<" "<<ans<<endl;
    return min(norm, ans);
}
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... |