Submission #398103

#TimeUsernameProblemLanguageResultExecution timeMemory
398103MeGustaElArroz23선물상자 (IOI15_boxes)C++14
10 / 100
1 ms336 KiB
#include<bits/stdc++.h>
#include "boxes.h"
using namespace std;

typedef long long ll;
typedef vector<ll> vi;

ll delivery(int n,int k, int l, int sections[]){
    if (l==1) return 0;
    vi v(n);
    for (ll i=0;i<n;i++) v[i]=sections[i];
    v.push_back(0);
    v.push_back(l);
    sort(v.begin(),v.end());
    vi avances(k,0);
    vi sol(n+1);
    sol[0]=0;

   

    for (ll i=1;i<n+1;i++){
        avances[i%k]+=v[i]-v[i-1];
        sol[i]=sol[i-1]+avances[i%k];
    }
    



    for (ll i=0;i<n+2;i++) v[i]=l-v[i];
    avances=vi(k,0);
    vi sol2(n+2);
    ll res=1e18;
    sol2[n+1]=0;
    for (ll i=n;i>=1;i--){
        avances[i%k]+=v[i]-v[i+1];
        sol2[i]=sol2[i+1]+avances[i%k];
    }

    for (ll i=0;i<n+1;i++) res=min(res,sol[i]+sol2[i+1]);

    return 2*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...