from re import I
import sys
import math
# 获取素因子
def getp(n):
    res = []
    for i in range(2,n+1):
        while n % i ==0:
            res.append(i)
            n = n // i
        if n == 1:
            break
    return set(res)

def DFS():
    res = []
    visit = []
    path = []
    def back(idx):
        if idx == n:
            if len(visit) == n:
                res.append(sum(visit))
            return
        for k in data[idx]:
            if k not in visit:
                visit.append(k)
                back(idx+1)
                visit.pop()
    back(0)
    return res

n = int(input())
ls = list(map(int,input().split()))
data = []
for l in ls:
    data.append(getp(l))
re = DFS()
if re:
    print(min(re))
else:
    print('-1')