题解 | #进制转换#

进制转换

https://www.nowcoder.com/practice/ac61207721a34b74b06597fe6eb67c52

import re
import sys

inputs = []
for line in sys.stdin:
    inputs.extend(list(map(int, line.split())))

def transfer_them(source, target):
        
    if target <= 1:
        raise ValueError("Target base must be greater than 1.")
    
    flag = ""
    if source < 0:
        source = -source
        flag = "-"
    
    result = []

    if source >= target:
        while source > 0:
            result.append(source % target)
            source //= target
        
        result.reverse()

    else:
        result.append(source)
    
    for index, item in enumerate(result):
        if item >= 10:
            result[index] = chr(item - 10 + ord('A'))
        else:
            result[index] = str(item)

    return flag + ''.join(result)

print(transfer_them(inputs[0], inputs[1]))

全部评论

相关推荐

2025-12-26 10:52
河北传媒学院 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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