怎样快速的算出一个数所以因数的和?
先分解质因数,设 n=p1^m1*p2^m2*。。。。*pk^mk ,则 n 的所有因数的和为 (1 p1 p1^2 。。 p1^m1)*(1 p2 p2^2 。。。 p2^m2)*。。。。*(1 pk pk^2 。 。。 pk^mk)。可以利用公式 1 x x^2 。。。。 x^n=[x^(n 1)-1]/(x-1) 将上式化简。如求 3600 的所有因数的和。 因为 3600=2^4*3^2*5^2,所以 3600 的所有因数的和为 (1 2 4 8 16)*(1 3 9)*(1 5 25)=(32-1)/1*(27-1)/2*(125-1)/4=12493 。全部
先分解质因数,设 n=p1^m1*p2^m2*。。。。*pk^mk ,则 n 的所有因数的和为 (1 p1 p1^2 。。 p1^m1)*(1 p2 p2^2 。。。 p2^m2)*。。。。*(1 pk pk^2 。
。。 pk^mk)。可以利用公式 1 x x^2 。。。。 x^n=[x^(n 1)-1]/(x-1) 将上式化简。如求 3600 的所有因数的和。
因为 3600=2^4*3^2*5^2,所以 3600 的所有因数的和为 (1 2 4 8 16)*(1 3 9)*(1 5 25)=(32-1)/1*(27-1)/2*(125-1)/4=12493 。收起