HJ6 质数因子 2022-03-12 周六

2022-03-15  本文已影响0人  勇往直前888

题目

思路

以上两步相当于把质因素从数字中移到了数组中;
从2开始,每次+1开始试,最小能整除的必然是质数;(这个要脑补一下)
i * i <= num 这个退出条件要脑补一下

// 输入字符串转数字
let num = parseInt(readline());

let arr = [] // 结果数组

// 主要是要明确指数因子的范围
// 小于等于本身,小于等于本身的开方
let i = 2;
while(i <= num && i * i <= num) { // 没有这个判断超时 i * i <= num
    // 每次都从2开始枚举
    if (num % i === 0) {
        arr.push(i)
        num /= i
        i = 2   
    } else {
        i++
    }
}

// 最后一个数
if (num != 1) {
    arr.push(num)
}    

// 数组转字符串输入,用空格隔开
console.log(arr.join(' '))


上一篇下一篇

猜你喜欢

热点阅读