对于一个正整数 $n$,其约数可以分为两类:
1. 除了 $n$ 自身之外的因子,这些因子都是成对出现的。例如对于 $6$ 来说,它有因子 $1,2,3$ 和 $6$,其中 $(1,6)$ 和 $(2,3)$ 是成对出现的。
2. 如果 $n$ 是平方数,则仅有一个不与自己相同的因子。例如对于 $4=2^2$ 来说,它只有两个因子:$1$ 和 $2$
综上所述,在求一个正整数的约数时,我们只需要考虑小于等于 $\sqrt{n}$ 的质因子即可。具体做法如下:
- 对 n 进行素数分解。
- 将每个质因子指数加一,并且将各个质因式乘起来即为总共的约束数量。
举例说明:
对于正整数 60:
$$
60 = 2^2 \times 3^1 \times 5^1
$$
则其约束数量为:
$$
(2+1) \times (1+1) \times (1+1)=12
$$
故 正整数 60 共有12个约束(包括除本身以外) 。