暴力O(NlogN) 从1~N枚举每个数用试除法对每个数进行分解质因数,最后把质因数累加即可。 优化O(N) 先枚举出1~N的所有质数,大概有N/lnN个,然后考虑N!中有多个质因子p.1 n中p的倍数显然有N/p个,P2的倍数有N/p2....Pk的倍数有N/pk个,然后累加即可。最终p个个数就是N/p+N/p2+…+N/pk对于每个p最坏的情况下所用时间logN$ 那么总的时间N/lnN * logN 近似为 O(N)的