題目來源:https://leetcode-cn.com/problems/base-7/comments/
給定一個整數(shù)慨蓝,將其轉(zhuǎn)化為7進制,并以字符串形式輸出端幼。
示例 1:
輸入: 100
輸出: "202"
示例 2:
輸入: -7
輸出: "-10"
注意: 輸入范圍是 [-1e7, 1e7] 礼烈。
思路:
進制轉(zhuǎn)換類的題目,先取模再整除婆跑,循環(huán)到0為止济丘。注意負(fù)數(shù)的處理,負(fù)數(shù)的%運算會得到預(yù)期外的結(jié)果洽蛀,轉(zhuǎn)成正數(shù)再做處理。
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