package main

import (
	"fmt"
	"math"
)

var N, A, B, C int
var Flag []int
var MP []int

func longer(i int, x int) {
	MP[i] += int(math.Abs(float64(x)))
}

func main() {

	fmt.Scan(&N, &A, &B, &C)
	Kadomatsu := []int{A, B, C}
	L := make([]int, N)
	KFlag := []int{0, 0, 0}
	TFlag := make([]int, N)
	for j := 0; j < N; j++ {
		TFlag[j] = 0
	}
	MP = []int{0, 0, 0}

	for j := 0; j < N; j++ {
		fmt.Scan(&L[j])
		// 竹が、門松の長さを満たしていないかチェック
		// 竹と門松の差分が１０以内の場合、延長短縮を用いてアジャストさせる
		for i := 0; i < 3; i++ {
			if math.Abs(float64(L[j]-Kadomatsu[i])) < 10 && KFlag[i] == 0 {
				KFlag[i] = 1
				TFlag[j] = 1
				MP[i] += int(math.Abs(float64(L[j] - Kadomatsu[i])))
			}
		}
	}
	// 長さを満たしていない門松に対して
	//for i := 0; i < 3; i++ {
	//	if Flag[i] == 0 {

	//	}
	//}
	fmt.Println(MP[0] + MP[1] + MP[2])

}