Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Chương trình kiểm tra mọi phép xoay của số đều là số nguyên tố trong Python


Cho số n, kiểm tra xem mọi phép xoay của n có phải số nguyên tố không.

Ví dụ, n = 13, đầu ra True (13 và 31 đều nguyên tố).

Các bước giải quyết:

  • Chuyển n thành chuỗi.
  • Lặp độ dài n lần:
    • Nếu n không phải nguyên tố, trả về False.
    • Xoay: n = n[1:] + n[0].
  • Trả về True.

Ví dụ minh họa

class Solution:
    def solve(self, n):
        def is_prime(n):
            if n <= 1:
                return False
            return not any(n % 2 == 0 or n % i == 0 for i in range(3, int(n**0.5) + 1, 2))
        n = str(n)
        for _ in range(len(n)):
            if not is_prime(int(n)):
                return False
            n = n[1:] + n[0]
        return True

ob = Solution()
print(ob.solve(13))

Đầu vào

13

Đầu ra

True