난이도 : Level 2
import sys
sys.setrecursionlimit(5000)
def solution(numbers, target):
global answer
answer = 0
def DFS(index, sum):
global answer
if (index == len(numbers)):
if sum == target:
answer +=1
return
else:
DFS(index+1, sum + numbers[index])
DFS(index+1, sum - numbers[index])
DFS(0,0)
return answer
후기
음... 답이 간단할수록 현타가 온다..
난 이 답을 못찾아내서 계속 헤맸던 것인가...
심지어 인터넷 찾아보고 해결한
쨌든
BFS, DFS문제는 그래프를 잘 그릴 줄 아는게 가장 중요한 듯 하다.
그래프를 잘 그려야 알고리즘을 잘 짤 수 있기 때문
다음은 BFS 문제를 풀어볼건데 그래프를 잘 그리는 데 노력하겠음.