题解 | #质数因子#

质数因子

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+" ");
    }
}


全部评论

相关推荐

10-30 22:18
已编辑
毛坦厂中学 C++
点赞 评论 收藏
分享
19 6 评论
分享
牛客网
牛客企业服务