首先就是将数据为0和负数的情况先解决。然后再来转化。转化进制,就是取余,然后当取整为0的时候,就结束了。然后倒着返回取余的,就是我们的进制答案。这里由于有大于10的,所以,我们可以通过t=“0123456789ABCDEF”,每次通过下标索引方便返回大于10的字母。
#
# 进制转换
# @param M int整型 给定整数
# @param N int整型 转换到的进制
# @return string字符串
#
class Solution:
def solve(self , M , N ):
# write code here
t = "0123456789ABCDEF"
ans = ""
if M==0:
return "0"
fu = False
if M<0:
fu = True
M=-M
while M!=0:
ans = ans+t[M%N]
M = M//N;
#如果是负数,换成正数计算,最后再加上符号位
if fu:
ans = ans+"-"
return ans[::-1]