题目来源:https://leetcode-cn.com/problems/base-7/comments/
给定一个整数,将其转化为7进制,并以字符串形式输出。
示例 1:
输入: 100
输出: "202"
示例 2:
输入: -7
输出: "-10"
注意: 输入范围是 [-1e7, 1e7] 。
思路:
进制转换类的题目,先取模再整除,循环到0为止。注意负数的处理,负数的%运算会得到预期外的结果,转成正数再做处理。
class Solution:
def convertToBase7(self, num: int) -> str:
if num == 0:
return '0'
sign = 1
if num < 0:
num = abs(num)
sign = -1
res = ''
while num > 0:
res = str(num % 7) + res
num //= 7
if sign == -1:
return '-' + res
return res