题解 | #质数因子#
质数因子
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 long a = in.nextInt(); long b = 2; while (a > 1 && b <= Math.sqrt(a)) { // 这里b不必加到a(会超时),加到根号a,最后再加一个判断 if (a % b == 0) { a /= b; System.out.print(b); if (a > 1) { System.out.print(" "); } b = 2; } else { b++; } } if (a != 1) { // 判断上面是b加到a停止的还是加到根号a仍未找到最后一个因子,后者最后一个因子就是a System.out.print(a); } } } }#华为机试##质数因子##在线编程#