【发布时间】:2020-09-05 16:48:16
【问题描述】:
问题
找到所提供参数的最小公倍数,该公倍数可以被两者以及这些参数之间范围内的所有序号均分。
范围将是一个由两个数字组成的数组,不一定按数字顺序。
例如,如果给定 1 和 3,请找出 1 和 3 的最小公倍数,它也能被 1 和 3 之间的所有数字整除。这里的答案是 6。
到目前为止我的代码
function smallestCommons(arr) {
let newArr = [];
let changedArr = arr.sort((a, b)=>{
if(a>b){
return 1;
}
if(b>a){
return -1;
} else {
return 0;
}
})
for(let i = changedArr[0]; i < changedArr[1]; i++){
newArr.push(i);
}
let answer = changedArr.every((item)=>{
})
}
smallestCommons([1,5]);
我的问题
- 我希望您能够帮助我理解这个问题 - 我已经研究了最小公倍数,但“可整除”让我很反感。
- 我希望您能解决问题,并简单地分解解决方案。
我问了很多,所以如果你回答,非常感谢!
【问题讨论】:
-
请注意,lcm 操作是可交换的和关联的。然后例如你有 lcm(a, b, c) = lcm (lcm(a, b), c) = lcm (a, lcm (b, c))。如果您能够计算两个操作数的 lcm,那么您可以对任意数量的操作数进行迭代。
标签: javascript algorithm