https://www.acmicpc.net/problem/21919
import math
import sys
def isPrime(n):
for i in range(2, int(math.sqrt(n))+1):
if n%i==0:
return False
return True
n=int(sys.stdin.readline())
mlist=list(map(int, sys.stdin.readline().split()))
plist=set([])
for num in mlist:
if isPrime(num)==True:
plist.add(num)
if len(plist)==0:
print(-1)
else:
res=1
for i in plist:
res*=i//math.gcd(res, i)
print(res)
import math
import sys
def isPrime(x):
if x<2:
return False
else:
for i in range(2, x):
if x%i==0:
return False
return True
n=int(sys.stdin.readline())
mlist=list(map(int, sys.stdin.readline().split()))
plist=[]
for num in mlist:
if isPrime(num)==True:
plist.append(num)
if len(plist)==0:
print(-1)
else:
res=1
for i in plist:
res*=i//math.gcd(res, i)
print(res)
시간초과를 방지하기 위해서는