N, A, B, C = map(int, input().split())
L = [int(input()) for _ in range(N)]

def dfs(n, a, b, c): # n本目を使用するかしないか
  if n == N: # 全ての竹を選び終わったら、延長魔法と短縮魔法を使ってA,B,Cの長さにする
    return abs(A-a)+abs(B-b)+abs(C-c)-30 # 最低でも1本のみ使用するが、その場合は合成しないため-30
  ret0 = dfs(n + 1, a, b, c) # 使わない
  ret1 = dfs(n + 1, a + L[n], b, c) + 10 # Aに使う
  ret2 = dfs(n + 1, a, b + L[n], c) + 10 # Bに使う
  ret3 = dfs(n + 1, a, b, c + L[n]) + 10 # Cに使う
  return min(ret0, ret1, ret2, ret3)

print(dfs(0,0,0,0))