python 代码
a,b = map(int,input().split())
for num in range(b,a,-1):
success = True
j = 2
while j <= a and j**2 <= num:
if num % j == 0:
success = False
break
j = j + 1
if success == True:
print(num)
exit()
print(-1)
# ------------------------- 线性筛法,但爆空间------------------------------------------#
# a,b = map(int,input().split())
# def get_primes(n):
# primes = []
# cnt = 0
# st = [False] * (n + 1)
# for i in range(2,n + 1):
# if st[i] == False:
# primes.append(i)
# cnt = cnt + 1
# j = 0
# while j < cnt and primes[j] * i <= n:
# t = primes[j] * i
# st[t] = True
# if i % primes[j] == 0:
# break
# j = j + 1
# return primes
# primes_b = get_primes(b)
# primes_a = get_primes(a)
# ans = primes_b[-1]
# for num in range(b,ans - 1,-1):
# u = False
# if ans <= a:
# print(-1)
# break
# for d in primes_a:
# if num % d == 0:
# u = True
# break
# if u == True:
# continue
# else:
# print(num)
# exit()