개발 무지렁이

[문제풀이] Level2 타겟넘버 본문

코딩 테스트/문제풀이

[문제풀이] Level2 타겟넘버

Gaejirang-e 2023. 2. 24. 16:16

타겟넘버


  🪅 모든 조합을 일일이 해야할 때(완전탐색), DFS로 구현할 수 있느냐
  🪅 재귀함수를 사용할 때, 종료조건을 명시했느냐

class Solution {
    int result = 0;
    public void DFS(int[] numbers, int target, int index, int sum) {
        if(index == numbers.length) {
            if(sum == target) {
                result++;
            }    
            return;
        }

        DFS(numbers, target, index+1, sum+numbers[index]);
        DFS(numbers, target, index+1, sum-numbers[index]);
    }

    public int solution(int[] numbers, int target) {
        int answer = 0;
        DFS(numbers, target, 0, 0);

        answer = result;
        return answer;
    }
}
Comments