题解 | #质数因子#
质数因子
http://www.nowcoder.com/practice/196534628ca6490ebce2e336b47b3607
1. 本题的思路:将这个整数num除以从2开始的质数(如果num%某个质因子==0,则将num除以该质因子直到不能除尽;
2. 因为 , 所以将num除到即可;
3.如果除到仍然没有能整除的数,则证明num本身为质数,直接打印num即可
import java.util.*; public class Main{ public static void main(String[] args){ Scanner sc = new Scanner(System.in); long num = sc.nextLong(); long k = (long)Math.sqrt(num); for(int i = 2; i<=k; i++){ while(num%i==0){ System.out.print(i+" "); num /= i; } } System.out.println(num <2 ? "": num+" "); } }