题解 | #质数因子#

质数因子

http://www.nowcoder.com/practice/196534628ca6490ebce2e336b47b3607

思路:

注意不要循环计算到这个数本身,这样耗时长,无法通过,循环到这个数的平方根即可

import java.util.Scanner;
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(long i = 2; i <= k;i++){
            while(num % i == 0){
                System.out.print(i+" ");
                num /= i;
            }
        }
        System.out.println(num == 1 ? "":num+" ");
    }
}


全部评论

相关推荐

评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务