문제
 
제한사항
 
문제풀이
class Solution {
    static int answer;
    public void dfs(int[] numbers,int target,int idx,int sum){
        if(idx == numbers.length){   
            if(sum == target) answer++;
            return;
        }
        
        sum+=numbers[idx];
        dfs(numbers,target,idx+1,sum);
        sum-=numbers[idx]*2;
        dfs(numbers,target,idx+1,sum);
        
    }
    
    public int solution(int[] numbers, int target) {
        answer = 0;
        
        dfs(numbers,target,0,0);
        
        return answer;
    }
}
 
※ 내 생각
이 문제는 DFS를 이용하는 문제입니다. 
각각의 값에 대해서 더해주고, 
빼주는 과정을 DFS를 이용해서 구현하면 됩니다.
DFS에서 numbers에 대한 값을 한번 더했으므로, 
*2 만큼 빼줘야 그 값에 대해 뺀 값으로 처리가 가능합니다.