丑数
丑数定义
说法一(ugly number):把只包含质因子2,3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但7、14不是,因为它们包含质因子7。 习惯上我们把1当做是第一个丑数。
说法二(humble number):对于一给定的素数集合 S = {p1, p2, …, pK},考虑一个正整数集合,该集合中任一元素的质因数全部属于S。这个正整数集合包括,p1、p1p2、p1p1、p1p2p3…(还有其它)。该集合被称为S集合的“丑数集合”。
丑数实现代码
for num in range(100):
flag = num
if num == 0:
continue
# num这个数不停的除于2、3、5。
# 丑数的定义:
# 就是只能被2、3、5整除的数字
# 1本身是丑数
while True:
if num % 2 == 0:
num //= 2
elif num % 3 == 0:
num //= 3
elif num % 5 == 0:
num //= 5
else:
break
if num == 1:
print(f'{flag}\t', end='')