
裸模板
求素因子乘积
for(ll i = 2; i * i <= n; i++)
{
if(n % i == 0)
{
p *= i;
while(n % i == 0)
{
n /= i;
// cnt[i]++ 素因子i个数
}
}
}
if(n) //如果剩一个素数 则将乘积乘剩下的素数
p *= n;

本文介绍了一种求解整数素因子乘积的算法。通过迭代检查从2开始的每个整数是否为输入数的因数,如果是,则将其乘入最终结果,并去除该因数直至不再存在。这一过程重复进行,直到所有素因子都被找到。如果最后剩余的数大于1,说明它本身是一个素数,需将其乘入结果中。
1786

被折叠的 条评论
为什么被折叠?



