题解 | #质数因子#
质数因子
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); }