题解 | #进制转换#

进制转换

https://www.nowcoder.com/practice/8f3df50d2b9043208c5eed283d1d4da6

def to_int(i: str) -> int:
    if i == "A":
        return 10
    if i == "B":
        return 11
    if i == "C":
        return 12
    if i == "D":
        return 13
    if i == "E":
        return 14
    if i == "F":
        return 15
    return int(i)


while True:
    try:
        num = input()
        num = num[2:]
        # get len
        res = 0
        for i in range(0, len(num), 1):
            res += to_int(num[-1]) * (16 ** i)
            num = num[:-1]

        print(res)
    except:
        break

很普通正常的思路,更快一点可以把函数 to_int 换成一个字典。类似于这样:

        to_16_dict = {'A': 10, 'B': 11, 'C': 12, 'D': 13, 'E': 14, 'F': 15, '9': 9, '8': 8, '7': 7, '6': 6, '5': 5, '4': 4, '3': 3, '2': 2, '1': 1, '0': 0, }
        for i in range(0, len(num), 1):
            res += to_16_dict[num[-1]] * (16 ** i)
            num = num[:-1]

全部评论

相关推荐

沉淀去了,8月是不是机会会多一点,。打招呼300+,就一个小厂面试,聊了十分钟天就让我去了,暑假继续沉淀了,到八月九月冲了
丰川打工祥:我目前的体感是,双非本+一段小厂实习,基本约不到中厂的面。已经开始第二段小厂了。可能的确是最近hc太少了。
点赞 评论 收藏
分享
05-09 12:23
已编辑
华南理工大学 Java
野猪不是猪🐗:给他装的,双九+有实习的能看的上这种厂我直接吃⑨✌们拿它练练面试愣是给他整出幻觉了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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