Giả sử chúng ta có một số n. Chúng ta phải kiểm tra xem tổng của hiệu số tuyệt đối của các cặp chữ số liền kề có phải là số nguyên tố hay không.
Vì vậy, nếu đầu vào là n =574, thì đầu ra sẽ là True là | 5-7 | + | 7-4 | =5, đây là số nguyên tố.
Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -
- num_str:=n dưới dạng chuỗi
- tổng số:=0
- đối với tôi trong phạm vi từ 1 đến kích thước là num_str - 1, hãy thực hiện
- tổng:=tổng + | chữ số ở vị trí num_str [i - 1] - chữ số ở vị trí num_str [i] |
- nếu tổng là số nguyên tố thì
- trả về True
- trả về Sai
Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn -
Mã mẫu
def isPrime(num): if num > 1: for i in range(2, num): if num % i == 0: return False return True return False def solve(n): num_str = str(n) total = 0 for i in range(1, len(num_str)): total += abs(int(num_str[i - 1]) - int(num_str[i])) if isPrime(total): return True return False n = 574 print(solve(n))
Đầu vào
574
Đầu ra
True