描述
123321是一个非常特殊的数,它从左边读和从右边读是一样的,我们称这样的数为回文数。
输入一个正整数n, 编程求所有这样的五位和六位十进制回文数,满足各位数字之和等于n(1<=n<=54)。 按从小到大的顺序输出满足条件的整数。
如果输入的数不在指定的范围,输出“输入错误,请重新输入!”
如果没有各位之和与输入的数相等的五位和六位回文数,输出“无满足条件的数!”
输入格式
输入一个正整数
输出格式
参考示例
例如:
输入 | 结果 |
---|---|
54 | 999999 |
2 | 10001 100001 |
-3 | 输入错误,请重新输入! |
51 | 无满足条件的数! |
不要想得太复杂,暴力判断即可
n = int(input())
if 1<=n<=54:
o = int(1)
for i in range(10000,100000):
a = i%10
b = i%100//10
c = i%1000//100
d = i%10000//1000
e = i//10000
if a + b + c + d + e == n and a==e and b==d :
print(i)
o = o + 1
for i in range(100000,1000000):
a = i%10
b = i%100//10
c = i%1000//100
d = i%10000//1000
e = i%100000//10000
f = i//100000
if a + b + c + d + e + f== n and a==f and b==e and c==d:
print(i)
o = o + 1
if o == 1:
print("无满足条件的数!")
else:
print("输入错误,请重新输入!")
输入 | 期望的结果 | 得到的结果 | ||
---|---|---|---|---|
54 | 999999 | 999999 | ||
2 | 10001 100001 | 10001 100001 | ||
-3 | 输入错误,请重新输入! | 输入错误,请重新输入! | ||
51 | 无满足条件的数! | 无满足条件的数! |