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