题解 | #质数因子#
质数因子
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);
// 注意 hasNext 和 hasNextLine 的区别
while (in.hasNextInt()) { // 注意 while 处理多个 case
int n= in.nextInt();
//除法结束的条件:n不再是质数,即n被完全分解成为了质数
for(int i=2;!isPrimer(n);)
{
if(isPrimer(i)&&n%i==0)
{
n/=i;
System.out.print(i+" ");
}
else{
i++;
}
}
System.out.println(n);
}
}
public static boolean isPrimer(int n)
{
for(int i=2;i*i<=n;i++)
{
if(n%i==0)
{
return false;
}
}
return true;
}
}
查看15道真题和解析
