Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Tìm nhóm phần tử có tổng và số lượng cho trước trong JavaScript

Viết hàm nhận mảng, tổng mong muốn sum và số lượng phần tử num. Đếm số nhóm con liên tiếp độ dài num có tổng bằng sum.

Ví dụ: arr=[1,2,1,3,2], sum=3, num=2 → 2 (các nhóm [1,2] và [1,2]).

Ví dụ

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(i, num + i);
    const partSum = part.reduce((acc, val) => acc + val);
    if (partSum === sum) count++;
  }
  return count;
};
console.log(findGroups(arr, sum, num));

Kết quả

2