JavaScript 中的下一个 5 倍数和二进制连接
问题
我们需要编写一个接受数字n的JavaScript函数。我们的函数应该返回该数字的下一个更高的5倍数,通过将可能最短的二进制字符串连接到该数字的二进制表示的末尾来获得。
示例
以下是代码-
const generateAll = (num = 1) => {
const res = [];
let max = parseInt("1".repeat(num), 2);
for(let i = 0; i <= max; i++){
res.push(i.toString(2).padStart(num, '0'));
};
return res;
};
const smallestMultiple = (num = 1) => {
const numBinary = num.toString(2);
let i = 1;
while(true){
const perm = generateAll(i);
const required = perm.find(binary => {
return parseInt(numBinary + binary, 2) % 5 === 0;
});
if(required){
return parseInt(numBinary + required, 2);
};
i++;
};
};
console.log(smallestMultiple(8));输出结果35
热门推荐
10 毛笔哥哥结婚祝福语简短
11 向国庆送祝福语简短
12 建队节祝福语简短
13 朋友喜得外孙简短祝福语
14 小店营业的祝福语简短
15 餐饮生日祝福语简短独特
16 鲜花英语祝福语卡片简短
17 男朋友暴富祝福语简短
18 婶婶拜年祝福语大全简短