https://school.programmers.co.kr/learn/courses/30/lessons/43165
def dfs(numbers, target, idx, result):
if idx == len(numbers):
return 1 if result == target else 0
return (dfs(numbers, target, idx + 1, result + numbers[idx]) +
dfs(numbers, target, idx + 1, result - numbers[idx]))
def solution(numbers, target):
return dfs(numbers, target, 0, 0)