N,A,B,C = map(int, input().split())
l = list(int(input()) for _ in range(N))
inf = 10 ** 9
def dfs(cur,a,b,c):
    if cur == N:
        return abs(a-A) + abs(b-B) + abs(c-C) -30 if min(a,b,c) > 0 else inf
    re0 = dfs(cur+1, a, b, c)
    re1 = dfs(cur+1, a+l[cur], b, c)+10
    re2 = dfs(cur+1, a, b+l[cur], c) + 10
    re3 = dfs(cur+1, a, b, c+l[cur]) + 10
    return min (re0, re1, re2, re3)
print(dfs(0,0,0,0)) N,A,B,C = map(int, input().split()) N map(int, input().split()) map int input().split() ().split () input split A B C l = list(int(input()) for _ in range(N)) l list(int(input()) for _ in range(N)) list int(input()) int input() input inf = 10 ** 9 inf 10 ** 9 10 9 def dfs(cur,a,b,c):
    if cur == N:
        return abs(a-A) + abs(b-B) + abs(c-C) -30 if min(a,b,c) > 0 else inf
    re0 = dfs(cur+1, a, b, c)
    re1 = dfs(cur+1, a+l[cur], b, c)+10
    re2 = dfs(cur+1, a, b+l[cur], c) + 10
    re3 = dfs(cur+1, a, b, c+l[cur]) + 10
    return min (re0, re1, re2, re3) dfs if cur == N:
        return abs(a-A) + abs(b-B) + abs(c-C) -30 if min(a,b,c) > 0 else inf
     cur == N cur N return abs(a-A) + abs(b-B) + abs(c-C) -30 if min(a,b,c) > 0 else inf abs(a-A) + abs(b-B) + abs(c-C) -30 if min(a,b,c) > 0 else inf min(a,b,c) > 0 min(a,b,c) min a b c 0 abs(a-A) + abs(b-B) + abs(c-C) -30 abs(a-A) + abs(b-B) + abs(c-C) abs(a-A) + abs(b-B) abs(a-A) abs a-A a A abs(b-B) abs b-B b B abs(c-C) abs c-C c C 30 inf re0 = dfs(cur+1, a, b, c) re0 dfs(cur+1, a, b, c) dfs cur+1 cur 1 a b c re1 = dfs(cur+1, a+l[cur], b, c)+10 re1 dfs(cur+1, a+l[cur], b, c)+10 dfs(cur+1, a+l[cur], b, c) dfs cur+1 cur 1 a+l[cur] a l[cur] l cur b c 10 re2 = dfs(cur+1, a, b+l[cur], c) + 10 re2 dfs(cur+1, a, b+l[cur], c) + 10 dfs(cur+1, a, b+l[cur], c) dfs cur+1 cur 1 a b+l[cur] b l[cur] l cur c 10 re3 = dfs(cur+1, a, b, c+l[cur]) + 10 re3 dfs(cur+1, a, b, c+l[cur]) + 10 dfs(cur+1, a, b, c+l[cur]) dfs cur+1 cur 1 a b c+l[cur] c l[cur] l cur 10 return min (re0, re1, re2, re3) min (re0, re1, re2, re3) min re0 re1 re2 re3 cur cur a a b b c c print(dfs(0,0,0,0)) print dfs(0,0,0,0) dfs 0 0 0 0 def dfs(cur,a,b,c):
    if cur == N:
        return abs(a-A) + abs(b-B) + abs(c-C) -30 if min(a,b,c) > 0 else inf
    re0 = dfs(cur+1, a, b, c)
    re1 = dfs(cur+1, a+l[cur], b, c)+10
    re2 = dfs(cur+1, a, b+l[cur], c) + 10
    re3 = dfs(cur+1, a, b, c+l[cur]) + 10
    return min (re0, re1, re2, re3) def dfs(cur,a,b,c):
    if cur == N:
        return abs(a-A) + abs(b-B) + abs(c-C) -30 if min(a,b,c) > 0 else inf
    re0 = dfs(cur+1, a, b, c)
    re1 = dfs(cur+1, a+l[cur], b, c)+10
    re2 = dfs(cur+1, a, b+l[cur], c) + 10
    re3 = dfs(cur+1, a, b, c+l[cur]) + 10
    return min (re0, re1, re2, re3) dfs C = map(int, input().split()) map(int, input().split()) C A,B,C = map(int, input().split()) map(int, input().split()) A l = list(int(input()) for _ in range(N)) list(int(input()) for _ in range(N)) l inf = 10 ** 9 10 ** 9 inf N,A,B,C = map(int, input().split()) map(int, input().split()) N B,C = map(int, input().split()) map(int, input().split()) B
N,A,B,C = map(int, input().split())
l = list(int(input()) for _ in range(N))
inf = 10 ** 9
def dfs(cur,a,b,c):
    if cur == N:
        return abs(a-A) + abs(b-B) + abs(c-C) -30 if min(a,b,c) > 0 else inf
    re0 = dfs(cur+1, a, b, c)
    re1 = dfs(cur+1, a+l[cur], b, c)+10
    re2 = dfs(cur+1, a, b+l[cur], c) + 10
    re3 = dfs(cur+1, a, b, c+l[cur]) + 10
    return min (re0, re1, re2, re3)
print(dfs(0,0,0,0))
