题解 | #质数因子#
质数因子
https://www.nowcoder.com/practice/196534628ca6490ebce2e336b47b3607
#include <stdio.h>
#include <math.h>
int main() {
int x;
scanf("%d",&x);
for(int i=2;i<=sqrt(x);i++)//有一个测试用例很大,循环的上界设为x,会超时。
{
while(x%i==0)
{
printf("%d ",i);
x/=i;
}
}
if(x>2)//若到这步,x非1,则‘x现’是一个大于sqrt(x原)的质数,直接输出就可
printf("%d ",x);
}