숫자를 연산하는 경우의 수를 전부나열하면 트리형태가 된다.
주어진 숫자를 전부 사용해서 연산할 때까지 트리를 내려가고 (dfs)
다 내려가면 target 과 같은지 확인하고 재귀함수 탈출한다.
function solution(numbers, target) {
var answer = 0;
//
function dfs(count,sum)
{
if(count===numbers.length)
{
if(sum===target)
{
answer++;
}
return;
}
dfs(count+1,sum-numbers[count])
dfs(count+1,sum+numbers[count])
}
dfs(0,0)
return answer;
}