HJ30 题解 | #字符串合并处理#
字符串合并处理
https://www.nowcoder.com/practice/d3d8e23870584782b3dd48f26cb39c8f
这道题实在算不上【较难】,比【中等】的购物单简单太多了
#简单模拟题
s1=input().replace(" ","")
s2=s1[::2]#偶数位
s3=s1[1::2]#奇数位
s2=sorted(s2)
s3=sorted(s3)
s1=""
for i in range(len(s2)):
try:#避免越界报错
s1+=s2[i]
s1+=s3[i]
except:
break
s4=""
for i in s1:
if "0"<=i<="9" or "A"<=i<="F" or "a"<=i<="f":
a=int(i,16)
b=("0"*(4-len(bin(a)[2:]))+bin(a)[2:])[::-1]#倒序字符串,注意补0
b=int(b,2)#转为十进制数
c=hex(b)[2:]#转为16进制
if c.isalpha():
c=c.upper()
s4+=c
else:
s4+=i
print(s4)
#华为##华为od##华为机试##华为od机试#华为HJ103所有解法 文章被收录于专栏
这是我准备华为od面试的专属专栏,我会把自己的解法更新在里面,我会尽量写清楚自己的思路以及多写关键注释,希望对阅读的人有帮助~~~

查看1道真题和解析