题目:
给你一个整数 n ,请你判断 n 是否为 丑数 。如果是,返回 true ;否则,返回 false 。
丑数 就是只包含质因数 2、3 和/或 5 的正整数。
示例:
输入:n = 6
输出:true
解释:6 = 2 × 3
思路:
给的这个数先判断,如果小于等于0,肯定不是丑数,然后让这个数在能除尽2的情况下,不断除以2,在能除尽3的情况下,除以3,在能除尽5的情况下,不断除以5,看最后得到的数,如果是1,就是丑数,如果不是1,说明有别的质因数,不是丑数。
class Solution(object):
def isUgly(self, n):
"""
:type n: int
:rtype: bool
"""
# 数学方法
if n <= 0:
return False
for i in (2,3,5):
while n % i == 0:
n /= i
return n == 1