题解 | #字符串合并处理#

字符串合并处理

http://www.nowcoder.com/practice/d3d8e23870584782b3dd48f26cb39c8f

while True:
    try:
        # 第一步
        s = ''.join(input().split())
        # 第二步
        l1 = [s[i] for i in range(len(s)) if i % 2 == 0] # 下标偶数
        l2 = [s[i] for i in range(len(s)) if i % 2 > 0] # 下标奇数
        l1, l2 = sorted(l1), sorted(l2) # 排序
        i = 1
        for c in l2:
            l1.insert(i, c) # 插入下标为奇数的字符
            i += 2
        s = ''.join(l1)
        # 第三步
        res = ''
        for c in s:
            if c in '0123456789abcdefABCDEF':
                b = bin(int(c, 16)).replace('0b', '')
                if len(b) < 4:
                    b = '0'*(4-len(b)) + b
                r = b[::-1]
                res += hex(int(r, 2)).replace('0x', '').upper()
            else:
                res += c
        print(res)
    except:
        break
全部评论

相关推荐

2025-12-02 22:43
门头沟学院 Java
累死的一条狗:问就是呗,说说你的优化部分
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务