程序在Python中查找长度为n的所有倒置数字

假设我们有一个值n。我们必须找到长度为n的所有倒置数字。正如我们所知,上下颠倒的数字是当翻转180度时看起来相同的数字。

因此,如果输入类似于n = 2,则输出将为['11','69','88','96']。

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

  • 定义一个功能middle()。这将花费x

  • 如果x为0,则

    • 返回空白字符串的列表

  • 如果x与1相同,则

    • 返回元素0、1、8的新列表

  • ret:=一个新列表

  • 中:=中(x − 2)

  • 中间每米

    • 在ret的末尾插入(“ 0”并置“ m”并接“ 0”)

    • 如果x与n不同,则

    • 在ret的末尾插入(“ 1”并置“ 1”)

    • 在ret的末尾插入(“ 6”并置“ 9”)

    • 在ret的末尾插入(“ 8”并置,“ 8”并置)

    • 在ret的末尾插入(“ 9”并置“ 6”)

  • 返回ret

  • 从主要方法中,执行以下操作-

  • 如果n为0,则

    • 返回新列表

  • 否则返回Middle(n)的排序列表

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

示例

class Solution:

   def solve(self, n):

      if not n:

         return []

      def middle(x=n):

         if not x:

            return [""]

         if x == 1:

            return list("018")

         ret = []

         mid = middle(x - 2)

         for m in mid:

            if x != n:

               ret.append("0" + m + "0")

            ret.append("1" + m + "1")

            ret.append("6" + m + "9")

            ret.append("8" + m + "8")

            ret.append("9" + m + "6")

         return ret

      return sorted(middle())

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

输入值

2

输出结果

['11', '69', '88', '96']

以上是 程序在Python中查找长度为n的所有倒置数字 的全部内容, 来源链接: utcz.com/z/359874.html

回到顶部