: DFS 백트랙킹을 이용해서 풀었다. 코드가 약간 지저분한데 한번더 풀 때는 좀 더 간결화한 코드로 풀면 좋을 것 같다!
result = 0
answer = 0
results = ""
arr = set([])
cnt = 0
def solution(numbers, target):
def recursion(idx=0) :
global result
global answer
global results
global arr
global cnt
cnt+=1
if len(numbers[idx:]) == 0:
if result == target and results not in arr:
arr.add(results)
answer += 1
return
else:
el = numbers[idx]
result += el * -1
results += str(el * -1)
recursion(idx+1)
result -= el * -1
results = results[:-len(str(el * -1))]
result += el
results += str(el)
recursion(idx+1)
result -= el
results = results[:-len(str(el))]
recursion()
return answer
: 프로그래머스 타겟넘버 풀이