进制转换

last modify

进制转换_牛客题霸_牛客网

问题简述

给定一个十进制数 M ,以及需要转换的进制数 N 。将十进制数 M 转化为 N 进制数。
若 M 为负数,应在结果中保留负号。

思路

  • 取余,然后倒序输出;

Python
class Solution:
    def solve(self , M: int, N: int) -> str:
        # book = {10:'A', 11:'B', 12:'C', 13:'D', 14:'E', 15:'F'}
        book = '0123456789ABCDEF'
        
        ret = []
        sign = '-' if M < 0 else ''
        rest = abs(M)
        while rest:
            r = rest % N
            # ret.append(str(book.get(r, r)))
            ret.append(book[r])
            rest //= N
        
        return sign + ''.join(ret[::-1])

Last updated