在JavaScript中寻找空缺编号

如果数字的长度至少为3位,则该数字是空的,并且可以通过将第一个和最后一个数字串在一起而形成的数字整除。符合此描述的最小数字是100。第一个数字是1,最后一个数字是0,形成10,这是100的因数。因此,100是空的。

我们需要创建一个接受数字n并返回最接近的空数(包括其本身)的函数。如果有2个等距数与n等距,则返回较低的一个。

一些例子-

gapful(25) ➞ 100

gapful(100) ➞ 100

gapful(103) ➞ 105

示例

以下是代码-

const num = 4780;

const isGapful = n => {

   if (n < 100){

      return false;

   }

   const temp = Array.from(n.toString());

   return n % (temp[0] + temp[temp.length - 1]) === 0;

}

function getClosestGapful(n) {

   let left = n, right = n;

   while (!isGapful(right)){

      right++;

   }

   if (n < 100){

      return right;

   }

   while (!isGapful(left)){

      left++;

   }

   return n - left <= right - n ? left : right;

};

console.log(getClosestGapful(25));

console.log(getClosestGapful(num));

输出结果

这将在控制台上产生以下输出-

100

4800

以上是 在JavaScript中寻找空缺编号 的全部内容, 来源链接: utcz.com/z/335262.html

回到顶部