Leetcode 326
阿新 • • 發佈:2018-11-24
給定一個整數,寫一個函式來判斷它是否是 3 的冪次方。
示例 1:
輸入: 27 輸出: true
示例 2:
輸入: 0 輸出: false
示例 3:
輸入: 9 輸出: true
示例 4:
輸入: 45 輸出: false
進階:
你能不使用迴圈或者遞迴來完成本題嗎
方法一:遞迴實現,簡單快捷
class Solution(object): def isPowerOfThree(self, n): """ :type n: int :rtype: bool """ if n <= 0: return False if n == 1: return True if n % 3 == 0: return self.isPowerOfThree(n/3) if n % 3 != 0: return False
方法二:利用while迴圈進行判斷是否是因子
class Solution(object): def isPowerOfThree(self, n): """ :type n: int :rtype: bool """ if n == 1: return True while n > 3: if n%3 != 0: return False n = n / 3 return n == 3