大风哥的打怪升级之路
学如逆水行舟,不进则退

第326题:3的幂

描述:给定一个整数,写一个函数来判断它是否是 3 的幂次方。

解题思路:条件分支的使用

  1. 当3的幂< n 时,继续计算3的幂
  2. 当循环结束时,判断 n 是否等于最后1个3的幂
  3. 3的零次方为特殊情况,需要单独拿出来进行判断

Python代码:

 1 class Solution(object):
 2     def isPowerOfThree(self, n):
 3         """
 4         :type n: int
 5         :rtype: bool
 6         """
 7         if n == 1:  # 不要忽略1是3的零次方
 8             return True
 9         ans = 3
10         while ans < n:
11             ans *= 3
12         return ans == n

 

posted on 2020-08-20 00:03  Little_Dandelion  阅读(195)  评论(0编辑  收藏  举报