题解 | #质数因子#
质数因子
https://www.nowcoder.com/practice/196534628ca6490ebce2e336b47b3607
import java.util.*; // 注意类名必须为 Main, 不要有任何 package xxx 信息 public class Main { public static void main(String[] args) { Scanner scan = new Scanner(System.in); while (scan.hasNextInt()) { int anInt = scan.nextInt(); ArrayList<Integer> list = new ArrayList<>(); int end = anInt; for (int i = 2; i <= end; ) { if (end % i == 0) { list.add(i); end = end / i; } else { i++; } } list.forEach(tmp -> System.out.print(tmp + " ")); } } }
质数中,0和1不算,从2开始,小于等于自身;
每次计算后,最大值变更为计算结果(整除得到的两个质数中的较大者);
能整除就继续整除,不能整除,质数累加尝试