def is_palindrome(num):
return str(num) == str(num)[::-1]
# 12345 54321 123321
def find_special_numbers(n):
special_numbers = []
for num in range(10000, 1000000):
if sum(map(int, str(num))) == n and is_palindrome(num):
# map(int, str(num)): 这将int函数应用于从上一步得到的字符串中的每个字符。
# 它将每个字符(字符串中的一个数字)转换回整数。因此,对于 '123',它变成了列表 [1, 2, 3]。
# sum(map(int, str(num))): 这计算了前一步中获得的所有整数的总和。
# 在我们的例子中,总和将是 1 + 2 + 3 = 6。
special_numbers.append(num)
return special_numbers
if __name__ == "__main__":
n = int(input())
result = find_special_numbers(n)
for res in result:
print(res)
蓝桥杯练习题 —— 特殊回文数(python)
最新推荐文章于 2024-08-29 15:47:48 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)