丑数(Ugly Number、Humble Number)是
数学术语。
丑数描述
说法一:把只包含
质因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但7、14不是,因为它们包含
质因子7。 习惯上我们把1当做是第一个丑数。
前20个丑数为:1, 2, 3, 4, 5, 6, 8, 9, 10, 12, 15, 16, 18, 20, 24, 25, 27, 30, 32, 36。
说法二:对于一给定的素数集合 S = {p1, p2, ..., pK},考虑一个正整数集合,该集合中任一元素的质因数全部属于S。这个正整数集合包括,p1、p1*p2、p1*p1、p1*p2*p3...(还有其它)。该集合被称为S集合的“丑数集合”。注意:我们认为1不是一个丑数,丑数集合中每个数从小到大排列,每个丑数都是素数集合中的数的乘积。(如S={2,3,5}时,对应丑数集合为U={2,3,4,5,6,9,10,15,25,30})
判断方法
说法一:首先除2,直到不能
整除为止,然后除5到不能整除为止,然后除3直到不能整除为止。最终判断剩余的数字是否为1,如果是1则为丑数,否则不是丑数。
c++代码(第n个丑数):
python代码: