''' 解题思路: 1、奇数排序:L[::2] = sorted(L[::2]),偶数排序:L[1::2] = sorted(L[1::2]),按字符的acsii实际值排序 2、构造一个函数实现字符翻转: 输入字符有其它超过0-9,a-f,A-F的其它字符,如g-z,G-Z。其它字符不变,满足条件的字符大写变小写 3、十六进制->十进制,二进制->十六进制,采用字典实现 ''' def f(s): if ('0'<= s <= '9') or ('a'<= s <= 'f') or ('A'<= s <= 'F'): if s.isupper(): s = s.lower() dic1 = {'0':0,'1':1,'2':2,'3':3,'4':4,'5':5,'6':6,'7':7, '8':8,'9':9,'a':10,'b':11,'c':12,'d':13,'e':14,'f':15} dic2 = {'0000':'0','0001':'1','0010':'2','0011':'3', '0100':'4','0101':'5','0110':'6','0111':'7', '1000':'8','1001':'9','1010':'A','1011':'B', '1100':'C','1101':'D','1110':'E','1111':'F'} t = bin(dic1[s]) t = t[2:] t = str(t) t = t.zfill(4) t = t[::-1] t = dic2[t] return t else: return s #--------------------------------------------------------------- while 1: try: L1,L2 = input().strip().split() L = list(L1+L2) L[::2] = sorted(L[::2]) L[1::2] = sorted(L[1::2]) tmp = '' for s in L: tmp = tmp+f(s) print(tmp) except: break