华为机试34-图片整理
题目描述
Lily上课时使用字母数字图片教小朋友们学习英语单词,每次都需要把这些图片按照大小(ASCII码值从小到大)排列收好。请大家给Lily帮忙,通过编程解决。
输入描述:
Lily使用的图片包括"A"到"Z"、"a"到"z"、"0"到"9"。输入字母或数字个数不超过1024。
输出描述:
Lily的所有图片按照从小到大的顺序输出
示例1
输入
Ihave1nose2hands10fingers
输出
0112Iaadeeefghhinnnorsssv
参考1:
直接法
while True: try: num = input() res = [] for a in num: if a.isalpha(): #是否是字母 m = ord(a) #转化为ACSII码 res.append([a,m]) else: res.append([a,int(a)]) re = sorted(res,key=lambda x:x[1]) cha = [i[0] for i in re] print(''.join(cha)) except: break
执行结果: 答案正确:恭喜!您提交的程序通过了所有的测试用例 用例通过率: 100.00% 运行时间: 23ms 占用内存: 3424KB
参考2:
简洁法
while True: try: print("".join(sorted(input()))) except:break
执行结果: 答案正确:恭喜!您提交的程序通过了所有的测试用例 用例通过率: 100.00% 运行时间: 24ms 占用内存: 3416KB