임의의 수의 인수(모두 숫자 유형)에 있는 JavaScript 함수를 작성해야 합니다.
함수는 덧셈과 뺄셈의 가능한 모든 합을 계산해야 합니다.
예를 들어 - 인수가 1, 2, 3인 경우
그런 다음 가능한 모든 조합은 -
1 + 2 + 3 1 - 2 - 3 1 + 2 - 3 1 - 2 + 3
마지막으로 함수는 0에 가장 가까운 합이 되어야 합니다. 이 경우 답은 0입니다.
예시
const findSmallestPositive = (...arr) => {
let set = new Set([Math.abs(arr[0])]);
for (let i = 1;
i < arr.length; i++){
const secondSet = new Set;
for (let d of Array.from(set)){
secondSet.add(Math.abs(d + arr[i]))
secondSet.add(Math.abs(d - arr[i]))
};
set = secondSet;
};
return Math.min(...Array.from(set))
};
console.log(findSmallestPositive(5,3))
console.log(findSmallestPositive(1,2,3))
console.log(findSmallestPositive(1,2,3,5)) 출력
이것은 다음과 같은 출력을 생성합니다 -
2 0 1