#include <bits/stdc++.h>
using namespace std;
int re(std::vector<int>& l, int m) {
  int min = 100000;
  int nA = -1;
  int ans = 0;
  int tmp;
  for (size_t i = 0; i < l.size(); i++) {
    if (abs(l[i] - m) < min) {
      min = abs(l[i] - m);
      nA = i;
      tmp = l[i];
    }
  }
  if (min <= 10) {
    l.erase(l.begin() + nA);
    return min;
  } else {
    ans += 10;
    if (l[nA] - m > 0) {
      if (l.empty()) {
        return ans + m;
      }
      l.erase(l.begin() + nA);
      return ans + re(l, l[nA] - m);
    } else {
      if (l.empty()) {
        return ans + m;
      }
      l.erase(l.begin() + nA);
      return ans + re(l, min);
    }
  }
  return ans;
}
int mins(int a, int b) {
  if (a < b) return a;
  return b;
}
int main(int argc, char const* argv[]) {
  int N, A, B, C, tmp, nA, nB, nC;
  int ans = 0;
  int min = 1000;
  std::vector<int> l, cp;
  std::cin >> N >> A >> B >> C;
  for (size_t i = 0; i < N; i++) {
    std::cin >> tmp;
    l.push_back(tmp);
  }
  sort(l.begin(), l.end());
  cp = l;
  ans = re(l, A);
  ans += re(l, B);
  ans += re(l, C);
  l = cp;
  tmp = ans;
  ans = re(l, A);
  ans += re(l, C);
  ans += re(l, B);
  tmp = mins(tmp, ans);
  l = cp;
  ans = re(l, B);
  ans += re(l, A);
  ans += re(l, C);
  tmp = mins(tmp, ans);
  l = cp;
  ans = re(l, B);
  ans += re(l, C);
  ans += re(l, A);
  tmp = mins(tmp, ans);
  l = cp;
  ans = re(l, C);
  ans += re(l, A);
  ans += re(l, B);
  tmp = mins(tmp, ans);
  l = cp;
  ans = re(l, C);
  ans += re(l, B);
  ans += re(l, A);
  tmp = mins(tmp, ans);
  std::cout << tmp << '\n';
  return 0;
}
