程序来检查数字的每个旋转是否在Python中为质数

假设我们有一个数字n,我们必须检查n的每个旋转是否为质数。

因此,如果输入像n = 13,则输出将为True,因为13是质数,31也是质数。

为了解决这个问题,我们将遵循以下步骤-

  • n:= n作为字符串

  • 做一个n次循环,做

    • 返回False

    • 如果n不是素数,则

    • n:= n [从索引1到结尾]连接n的第一个字符

    • 返回True

    让我们看下面的实现以更好地理解-

    示例

    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))

    输入项

    13

    输出结果

    True
    猜你喜欢