
- 난이도: Lv2
 
프로그래머스 링크: https://school.programmers.co.kr/learn/courses/30/lessons/43165
풀이 링크(GitHub): hayannn/CodingTest_Java/프로그래머스/2/43165.타겟 넘버


풀이 시간 : 45분
방법의 수를 세는 count 선언
DFS 실행하기(numbers, target, index, sum)
count 리턴하기
별도 메서드 : DFS
import java.util.*;
class Solution {
    
    static int count;
    
    public int solution(int[] numbers, int target) {
        
        count = 0;
        
        dfs(numbers, target, 0, 0);
        return count;
    }
    
    public static void dfs(int[] numbers, int target, int index, int sum) {
        if (index == numbers.length) {
            if (sum == target) {
                count++;
            }
            return;
        }
        dfs(numbers, target, index+1, sum + numbers[index]);
        dfs(numbers, target, index+1, sum - numbers[index]);
    }
}
