# 素因子/质因子:能整除给定正整数的质数
# 质数/素数:一个大于1的自然数,除了1和它本身外,不能被其他自然数整除
from collections import deque
from math import inf
n = int(input())
a = list(map(int, input().split()))
# 首先我们要找出每一个数的所有素因子
def factor(x:int):
if x<2: return set()
fac = set()
while x%2 == 0:
fac.add(2)
x //= 2
f = 3
while f*f <=x:
if x%f == 0:
fac.add(f)
x //= f
else:
f += 2
if x > 1:
fac.add(x)
return list(fac)
# 函数逻辑:
# 将x/2直到不能整除为止,此时x的因子只包含奇数
# 如果x小于f*f
# 那么x一定是(f-2)*(f-2)到f*f范围内的质数
# 为什么?因为如果它不是质数,那么x=a*b,其中a、b都为奇数,而且a,b都>=f
# 如果比f小,那么在之前的循环里就整除了
# 因为a,b都>=f,所以x>=f*f,与条件矛盾
# 所以x一定是质数
# 但是在整除偶数的过程中,可能会出现1,所以要加条件x>1,比如x=4
b = []
for num in a:
b.append(factor(num))
# 用DFS
min_sum = inf
def f(index,current_sum,visited):
global min_sum
# **这两个if的顺序
if current_sum >= min_sum:
return
if index == n:
min_sum = current_sum
return
for num in b[index]:
if current_sum+num > min_sum: # **
break # **
if num not in visited:
visited.add(num)
f(index+1,current_sum+num,visited) # ** current_sum+num放在函数内
visited.discard(num)
return min_sum if min_sum!=inf else -1
print(f(0,0,set()))