326. Power of Threeshell
Given an integer, write a function to determine if it is a power of three.oop
Follow up:
Could you do it without using any loop / recursion?spa
簡介code
這個題目很簡單,使用一個簡單的循環就能夠完成,可是題目中有說明:你能夠不使用循環和遞歸的狀況下完成它嗎?我想說:那果斷啊,否則尼?orm
然而我想了很久卻沒有思路,真心以爲循環的路被堵住之後,已經無路可走了,實在沒有想法,偷偷瞄了一眼別人的code,最後才完成最後的提交。遞歸
解決方案以下:three
n = 3**log3n it
代碼以下io
class Solution(object): def isPowerOfThree(self, n): """ :type n: int :rtype: bool """ if n == 1: return True if n >= 3: return n > 0 and 3 ** round(math.log(n,3)) == n else: return False
總結function
看上去越簡單的題目,每每越難解決,