제출 #1298318

#제출 시각아이디문제언어결과실행 시간메모리
1298318the_commando_x선물상자 (IOI15_boxes)C++17
10 / 100
1 ms580 KiB
#include "boxes.h"
#include <algorithm>

long long delivery(int N, int K, int L, int p[])
{
    auto dist = [&](long long x)
    {
        return std::min(x, (long long)L - x);
    };

    long long ans = 0;
    if (K == 1)
        for (int i = 0; i < N; ++i)
            ans += 2LL * std::max(0ll, dist(p[i]));

    else if (K == N)
    {
        long long mxGap = 0;
        for (int i = 0; i + 1 < N; ++i)
            mxGap = std::max(mxGap, (long long)p[i + 1] - p[i]);

        mxGap = std::max(mxGap, (long long)L - p[N - 1] + p[0]);

        ans = 2LL * (L - mxGap);
    }

    return ans;
}
#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...