Cho ba số, kiểm tra xem chúng có phải là ba số nguyên tố liền kề hay không (tức là không có số nguyên tố nào nằm giữa chúng).
Ví dụ: [5,7,11] → True vì 5, 7, 11 là ba số nguyên tố liên tiếp.
Giải thuật
- Kiểm tra cả ba số có phải số nguyên tố không.
- Tìm số nguyên tố tiếp theo của số đầu tiên, so sánh với số thứ hai.
- Tìm số nguyên tố tiếp theo của số thứ hai, so sánh với số thứ ba.
- Nếu cả hai khớp thì trả về
True.
Mã ví dụ
def isPrime(num):
if num > 1:
for i in range(2, num):
if num % i == 0:
return False
return True
return False
def get_next_prime(num):
next_prime = num + 1
while not isPrime(next_prime):
next_prime += 1
return next_prime
def solve(x, y, z):
if not isPrime(x) or not isPrime(y) or not isPrime(z):
return False
if get_next_prime(x) != y:
return False
if get_next_prime(y) != z:
return False
return True
nums = [5,7,11]
print(solve(*nums))
Đầu vào
[5,7,11]
Đầu ra
True