题解 | #字符串分隔#
质数因子
http://www.nowcoder.com/practice/196534628ca6490ebce2e336b47b3607
import java.util.Scanner;
import java.lang.Math;
public class Main{
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
num = num/i;
System.out.print(i + " ");
}
System.out.print(num);
}
}
}
import java.lang.Math;
public class Main{
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int num = scan.nextInt();
// 1不算,所以从2开始;
// 不需要一直遍历到num,截止到num开根号就行,具体为什么不太清楚
for(int i = 2;i<=Math.sqrt(num);i++){
// num模i是否能除尽,取除尽的处理;能除尽就一直循环除,把能获取到的除数因子i都输出;
while(num%i == 0){num = num/i;
System.out.print(i + " ");
}
}
// 能除尽的操作因子输出完,或者被除数没有因子,若大于1,直接输出
if(num > 1){System.out.print(num);
}
}
}