FF博士最近在研究MMT数(莫明堂数-_-)
显然这样的数可以有无限个。
FF博士现在想知道在所有小于n的正整数里面有多少个n的MMT数
样例解释: 3个数分别是 4 6 8
gcd(n,x)的意思是求n和x的最大公约数
根据题意我们可以变成求,n-1-(n的因数个数)-(小于n的与n互质的数个数)
我数学菜了。因数个数只需要枚举到sqrt(n)因为另一半个数和这一半相同。
洏互质的数就比较牛逼了用欧拉函数,φ正好表示的是这个意思。
所以φ(n)可以表示成为若干个φ相乘的结果,每一个φ可以用方程1表示然后用快速幂算。
枚举质因数也只需要枚举到sqrt(n)但是要注意,至多还可能存在一个大于sqrt(n)的质因数要单独考虑。
即除掉所有小于sqrt(n)的质因数の后如果还大于1,则剩下的这个数也是n的一个质因数并且只有一个。
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。