题解 | #质数因子#
质数因子
https://www.nowcoder.com/practice/196534628ca6490ebce2e336b47b3607
import java.util.Scanner;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int a = scanner.nextInt();
// i < a 换成 i*i < a,可以加快速度
for (int i = 2; i * i <=a; i++) {
if (isPrime(i) && a % i == 0) {
System.out.print(i + " ");
// 重新找
a = a / i;
i = 1;
}
}
System.out.println(a + " ");
}
private static boolean isPrime(int n) {
if (n == 2 || n == 3 || n == 5 || n == 7 || n == 11 || n == 13) {
return true;
}
if (n > 13) {
for (int j = 2; j < n; j++) {
if (n % j == 0) {
return false;
}
}
return true;
}
return false;
}
}


查看4道真题和解析