n = int(input()) a, b, c = map(int, input().split()) max_total = 0 max_z = n // 10 for z in range(0, max_z + 1): r = n - 10 * z if r < 0: continue max_y = r // 5 y_candidates = set() # Add lower candidates (0-4) for y in range(0, 5): if y <= max_y: y_candidates.add(y) # Add upper candidates (max_y-4 to max_y) start = max(0, max_y - 4) for y in range(start, max_y + 1): y_candidates.add(y) best = 0 for y in y_candidates: remaining = r - 5 * y if remaining < 0: continue x = remaining // 3 current = b * y + a * x if current > best: best = current total = c * z + best if total > max_total: max_total = total print(max_total)