문제 풀이 : 2021.05.13
모든 가능한 경우의 수들을 고려해서 조건에 만족하는 경우의 수를 계산 해야하므로 '완전탐색'을 이용한 dfs를 사용
class Solution {
static int answer = 0;
public int solution(int[] numbers, int target) {
dfs(0,numbers,target,0);
return answer;
}
static void dfs(int a, int[] arr, int t, int r){
if(a==arr.length){
if(t==r)
answer++;
}
else{
dfs(a+1,arr,t,r+arr[a]);
dfs(a+1,arr,t,r-arr[a]);
}
}
}
문제 링크 링크