题解 | #质数因子#
质数因子
https://www.nowcoder.com/practice/196534628ca6490ebce2e336b47b3607
import java.util.Scanner;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int num=in.nextInt();
int num2=num;
int j=2;
if(num==1){
System.out.println();
}
if(zhinum(num)){
System.out.println(num);
return;
}
while(j<=num){
if(zhinum(j)){
while(num2%j==0){
System.out.print(j);
num2=num2/j;
if(zhinum(num2))
{
System.out.print(" "+num2);
return;
}
if(num2!=1){
System.out.print(" ");
}
}
if(num2==1){
break;
}
}
j++;
}
}
public static boolean zhinum(int n)
{
if(n==2){
return true;
}
else{
int i=2;
while(i<=Math.sqrt(n)){
if(n%i==0){
return false;
}
i++;
}
return true;
}
}
}
先判断是否是质数,然后在对合数进行分解。
查看9道真题和解析