如何检查 X 是否是任何整数的 60 的除数?
How to check if X is a divisor of 60 to power of any integer?
我有一个很大的随机数 n,我需要检查这个数是否是 60 的 ANY[=27= 次方]整数
例如:
输入:
9
输出:
True
因为它是 60^2 的约数
- 我研究了数字因式分解和除数以找到一个
示意图,但我没有成功
这样看:
60 = 2^2 * 3 * 5
60^2 = 2^4 * 3^2 * 5^2
60^3 = 2^6 * 3^3 * 5^3
...
所以一个正整数 n
是 60 的某个幂的约数当且仅当它可以写成
n = 2^k * 3^l * 5^m,
其中 k
、l
和 m
是一些 >= 0 的整数。
换句话说,n
的素因子集一定是{2,3,5}的子集。
我有一个很大的随机数 n,我需要检查这个数是否是 60 的 ANY[=27= 次方]整数
例如:
输入:
9
输出:
True
因为它是 60^2 的约数
- 我研究了数字因式分解和除数以找到一个 示意图,但我没有成功
这样看:
60 = 2^2 * 3 * 5
60^2 = 2^4 * 3^2 * 5^2
60^3 = 2^6 * 3^3 * 5^3
...
所以一个正整数 n
是 60 的某个幂的约数当且仅当它可以写成
n = 2^k * 3^l * 5^m,
其中 k
、l
和 m
是一些 >= 0 的整数。
换句话说,n
的素因子集一定是{2,3,5}的子集。