DFS 를 이용해서 풀어보았다.
numbers 를 탐색하는 것을 DFS를 이용해서 하고
numbers[depth] *= -1 을 이용해 부호를 바꿔 줬다.
def solution(numbers, target):
answer = DFS(numbers,target,0)
return answer
def DFS(numbers,target,depth):
if depth == len(numbers):
if sum(numbers) == target :
return 1
else :
return 0
else :
answer += DFS(numbers,target,depth+1)
numbers[depth] *= -1
answer += DFS(numbers,target,depth+1)
solution([1, 1, 1, 1, 1],3)