JS代码实现,时间复杂度由O(n)变为O(logn)
var num=parseInt(readline()); var res=[] for(var i=2;i<=Math.sqrt(num);i++){//一开始是超时的,后面循环次数改成Math.sqrt(num)之后提交成功 if(num % i ==0){ num=num/i; res.push(i); //print(i); i--; } } if(num!=1) res.push(num) var str=`` for(var i=0;i<res.length;i++){ str+=`${res[i]} ` } print(str)