Python 中的將整數轉換為 3 進位制數字


假設我們有一個數字 n,我們必須以字串形式找到此數字的 3 進位制等效數字。

因此,如果輸入像 17 一樣,則輸出將為 122。

為了解決這個問題,我們將按照以下步驟進行 −

  • if n<0
    • sign := -1
  • 否則 sign := 空字串
  • n := |n|
  • 如果 n <3,則
    • 返回 n 作為字串
  • s := 空字串
  • 當 n 與 0 不同時,執行
    • s := (n mod 3) 的字串連線 s
    • n := (n / 3) 的商
  • 返回 sign 連線 s

讓我們看看以下實現以獲得更好的理解 −

示例

 即時演示

class Solution:
   def solve(self, n):
      sign = '-' if n<0 else ''
      n = abs(n)
      if n < 3:
         return str(n)
         s = ''
      while n != 0:
         s = str(n%3) + s
         n = n//3
      return sign+s
ob = Solution()
print(ob.solve(17))

輸入

17

輸出

122

更新時間: 2020 年 9 月 23 日

2K+ 次瀏覽

開啟 職業生涯

透過完成課程來獲得認證

開始
廣告
© . All rights reserved.