import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.StringTokenizer;

public class Marathon {

    public static void main(String[] args) throws IOException {

        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

        StringTokenizer tk = new StringTokenizer(br.readLine());
        int N = Integer.parseInt(tk.nextToken());
        int K = Integer.parseInt(tk.nextToken());

        int[] booths = new int[N];

        tk = new StringTokenizer(br.readLine());
        for (int i = 0; i < N; i++) {
            booths[i] = Integer.parseInt(tk.nextToken());
        }

        if (N == 1) {
            System.out.println(0);
            return;
        }

        Arrays.sort(booths);
        int min = booths[0];

        for (int i = 0; i < booths.length; i++) {
            booths[i] -= min;
        }



        int[] diffs = new int[N - 1];
        for (int i = 0; i < diffs.length; i++) {
            diffs[i] = booths[i + 1] - booths[i];
        }

        int[] diffSumsLP = new int[N];
        int[] diffSumsLN = new int[N];
        int[] diffSumsRP = new int[N];
        int[] diffSumsRN = new int[N];

        for (int i = 1; i < diffSumsLP.length; i++) {
            int diff = (diffs[i - 1] - K) * i;

            if (diff >= 0) {
                diffSumsLP[i] = diffSumsLP[i - 1] + diff;
            }
            else {
                diffSumsLN[i] = diffSumsLN[i - 1] - diff;
            }
        }

        for (int i = diffSumsRP.length - 2; i >= 0; i--) {
            int diff = (diffs[i] - K) * (diffSumsRP.length - i - 1);

            if (diff >= 0) {
                diffSumsRP[i] = diffSumsRP[i + 1] + diff;
            }
            else {
                diffSumsRN[i] = diffSumsRN[i + 1] - diff;
            }
        }



        min = Integer.MAX_VALUE;
        for (int i = 0; i < diffSumsLP.length; i++) {
            int sum = Math.abs(diffSumsLP[i] - diffSumsLN[i]) + Math.abs(diffSumsRP[i] - diffSumsRN[i]);

            if (sum < min) {
                min = sum;
            }
        }

        System.out.println(min);
    }
}

