Python 中的 3 的幂

pythonserver side programmingprogramming更新于 2025/10/31 9:16:17

假设我们有一个数字 n。我们必须检查该数字是否是 3 的幂。因此,如果数字为 n = 27,即 3 的幂,则结果为真,如果 n = 15,则结果为假。

要解决这个问题,我们将遵循以下步骤 −

  • 我们将使用对数来解决这个问题
  • 如果 [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

相关文章


有用资源