这道题是签到题,但是不考虑一些情况是拿不满分的。
在什么情况下输出“输入不合法!”呢?
①:输入只有四位,且不是四位整数,即最高位是0(这样的话至多也是三位数,比如0123就是一百二十三,而不是零千一百二十三)
②:输入不止四位,但是前四位确实是最高位非零的数字字符。
好了这就是异常的处理。
下面是代码:
def encrypt(a):
return (ord(a)+5)%10
def swap(*tuple):
v = list(tuple)
length = len(v)
for i in range(2):
temp = v[i]
v[i] = v[length - i - 1]
v[length - i - 1] = temp
for i in v:
print(i,end="")
def is_not_num(s):
if '9' >= s[0] >= '1' and '9' >= s[1] >= '0' and '9' >= s[2] >= '0' and '9' >= s[3] >= '0':
return False
else:
return True
lst = []
s = input()
if len(s)!=4 or is_not_num(s):#样例中有一组数据前四个是四位数字,后面跟了非法字符
print("输入不合法!")
else:
for i in s:
lst.append(encrypt(i))
swap(*lst)