Python 中的三次方


假設我們有一個數字 n。我們需要檢查該數字是否是 3 的次冪。因此,如果數字為 n = 27,即 3 的次冪,則結果為 true;如果 n = 15,則為 false。

為解決此問題,我們將按照以下步驟進行操作 -

  • 我們將使用對數來解決此問題
  • 如果 [log10(n) / log10(3)] mod 1 == 0,則為 3 的次冪,否則不是

示例

讓我們看看以下實現,以便更好地理解 -

 線上示例

class Solution(object):
   def isPowerOfThree(self, n):
      """
      :type n: int
      :rtype: bool
      """
      if not n or n<0:
         return False
      return (math.log10(n)/ math.log10(3)) % 1 == 0
ob1 = Solution()
print(ob1.isPowerOfThree(27))
print(ob1.isPowerOfThree(15))
print(ob1.isPowerOfThree(9)

輸入

27
15
9

輸出

true
false
true

更新於: 2020-04-28

1K+ 次瀏覽

開啟您的職業生涯

完成課程即可獲得認證

開始使用
廣告
© . All rights reserved.