我试图按照记录的解决方案解决Project Euler#3,但它导致重复主要因素。
在以上10个因子的例子中,2重复多次(3次),其中5不重复(我理解其背后的原因),但如何避免它并且只打印因子10 2和5。
答案 0 :(得分:1)
更改您的代码,如下所示
n = 10;
f = 2;
lf = 1;
on = n;
while(n>1) {
if(n%f == 0) {
while(on%f == 0) {
lf = f;
n = n/f;
console.log(lf);
f=f+1;
}
} else if (n<f) {
n = 0;
}
else {
f=f+1;
}
}
让我知道它是否有用
答案 1 :(得分:0)
这是解决方案伙伴.....
n = 10;
f = 2;
lf = 1;
while (n>1) {
if ( n%f ==0) {
lf = f;
n = n/f;
while (n%f == 0) {
n = n/f;
}
console.log(f + "<br/>");
}
f = f + 1
}