Leetcode刷题记录——263. 丑数
程序员文章站
2022-07-15 12:13:57
...
注意:
1、数字1是丑数
2、一个数是丑数,意味着
它可以至少被{2,3,5}中的一个整除 且 它除以这个数的结果也是丑数
class Solution:
def __init__(self):
self.uglyset = {1,2,3,5}#{2:1,3:1,5:1}
def isUgly(self, num: int) -> bool:
return self.func(num)
def func(self,num):
if num in self.uglyset:
return True
elif num <= 0:
return False
else:
res2 = self.func(num/2) if num % 2 == 0 else False
if res2 == True:
self.uglyset.add(res2)#1
return True
res3 = self.func(num/3) if num % 3 == 0 else False
if res3 == True:
self.uglyset.add(res3)# = 1
return True
res5 = self.func(num/5) if num % 5 == 0 else False
if res5 == True:
self.uglyset.add(res5)# = 1
return True
return False
上一篇: 1024 科学计数法
下一篇: 1024 科学计数法