查找在 JavaScript 中可以被某个数字整除的数组中的成对元素


我们需要编写一个 JavaScript 函数,它以数组的数字列表作为第一个参数(将其称作 arr),并以单个数字作为第二个参数(将其称作 num)。

这个函数应该在数组中找到所有成对元素,其中 −

arr[i] + arr[j] = num, and
i < j

例如 −

如果是输入数组和数字 −

const arr = [1, 2, 3, 4, 5, 6];
const num = 4;

那么输出应该为 −

const output = [
   [1, 3], [2, 6], [3, 5]
];

示例

此代码为 −

 演示

const arr = [1, 2, 3, 4, 5, 6];
const num = 4;
const divisibleSumPairs = (arr = [], num) => {
   const res = [];
   const { length } = arr;
   for(let i = 0; i < length; i++){
      for(let j = i + 1; j < length; j++){
         const sum = arr[i] + arr[j];
         if(sum % num === 0){
            res.push([arr[i], arr[j]]);
         }
      }
   }
   return res;
};
console.log(divisibleSumPairs(arr, num));

输出

控制台中的输出将为 −

[ [ 1, 3 ], [ 2, 6 ], [ 3, 5 ] ]

更新于: 2021 年 2 月 24 日

248 次浏览

开启您的 职业生涯

通过完成课程获得认证

开始
广告