原题目:写一个程序来检测一个整数是不是丑数
。丑数的定义是,只包含质因子 2, 3, 5
的正整数。比如 6, 8 就是丑数,但是 14 不是丑数以为他包含了质因子 7。1是特殊的丑数,0不是丑数。
样例:给出 num = 8
,返回 true
。给出 num = 14
,返回 false
。
个人思路:
1采用while (1)的方式不断循环。
2判断是否为0或1。
3判断是否能被2或者3或者5整除,返回除以质数后的结果,继续循环。
代码:
class Solution:
"""
@param num: An integer
@return: true if num is an ugly number or false
"""
def isUgly(self, num):
# write your code here
while(1):
if num == 1:
return True
elif num == 0:
return False
elif num % 2 == 0:
num = num /2
continue
elif num %3 == 0:
num = num / 3
continue
elif num % 5 == 0:
num = num /5
continue
else:
return False