代码如下:
#include#include #include using namespace std; const int maxn=100001; int prime[maxn],p[maxn]={0},pNum=0; struct factor{ int x,count;//质因子和其个数 }fac[10]; void FindPrime(){ int i; for(i=2;i >n; FindPrime(); int i; FindFactor(n); cout< 1) cout< 需要注意很多细节:
1.当n==1时,需要特判。
2.记得处理大于sqrt(n)的质因子。
3.需要在循环外定义变量存储sqrt(n)。因为n是不断变化的。
4.素数表大概开1e5大小。fac数组开到10即可。



