326. 3的幂
给定一个整数,写一个函数来判断它是否是 3 的幂次方。
示例 1:
输入: 27 输出: true
示例 2:
输入: 0 输出: false
示例 3:
输入: 9 输出: true
示例 4:
输入: 45 输出: false
进阶:
你能不使用循环或者递归来完成本题吗?
解题思路:只要n不等于1,计算n%3,若n%3 == 0,则令n = n // 3;否则直接返回False。
Python3代码如下:
class Solution(object):
def isPowerOfThree(self, n):
"""
:type n: int
:rtype: bool
"""
if not n:
return False
while n != 1:
if n % 3 == 0:
n = n // 3
else:
return False
return True