检查是否可以在Python中根据给定的N创建回文字符串

假设我们有一个数字n。我们必须检查是否可以从该数字创建字母小写字符串,并检查该字符串是否为回文。在这里,我们将只接受从a到j的字符,[a = 0,b = 1 ... j = 9]。因此,如果数字为42,则将打印“ ec”子字符串直到6(4 + 2)个字符“ ececec”,然后检查是否为回文。

因此,如果输入像n = 43,则输出将为True,字符串为“ ededede”,这就是回文。

示例

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

def isPalindrome(s):
   return s == s[::-1]
def solve(n):
   temp = ""
   s = str(n)
   letters = "abcdefghij"
   sum = 0
   substr = ""
   for i in range(len(s)) :
      d = int(s[i])
      substr += letters[d]
      sum += d
   while len(temp) <= sum:
      temp += substr
   temp = temp[:sum]
   return isPalindrome(temp)
n = 43
print (solve(n))

输入值

43
输出结果
True

猜你喜欢