在 JavaScript 中查找数组中元素的所需总和

javascriptweb developmentfront end technology更新于 2024/6/20 21:32:00

假设我们有一个像这样的数字数组 −

const arr = [1, 2, 1, 3, 2];

我们需要编写一个 JavaScript 函数,将一个这样的数组作为第一个参数。第二个参数是一个表示所需总和的数字,我们称之为 sum,第三个也是最后一个参数也是一个表示数组中应加起来达到所需总和的数字的数量(不重复元素),我们称这个数字为num。

该函数最终应返回所有具有所需总和和长度的组的数量。

因此,如果输入值为 −

const arr = [1, 2, 1, 3, 2];
const sum = 3;
const num = 2;

那么输出应该是 −

const output = 2;

因为这两个组分别是 1, 2 和 1, 2

示例

其代码为 −

const arr = [1, 2, 1, 3, 2];
const sum = 3;
const num = 2;
const findGroups = (arr = [], sum = 1, num = 1) => {
   let count = 0
   for(let i = 0; i < arr.length; i++){
      let part = arr.slice(0 + i, num + i);
      const partSum = part.reduce((acc, val) => acc + val);
      if(partSum === sum){
         count++;
      };
   };
   return count
};
console.log(findGroups(arr, sum, num));

输出

控制台中的输出将是 −

2

相关文章