题解 | #质数因子#
质数因子
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); long num = scanner.nextLong(); long k = (long) Math.sqrt(num); for (long i = 2; i <= k; ++i) { while (num % i == 0) { System.out.print(i + " "); num /= i; } } System.out.println(num == 1 ? "": num+" "); } }
涉及到while循环时,要注意看下循环结束的条件是否可优化,这往往会成为优化的关键