타겟 넘버

LJM·2023년 8월 17일
0

programmers

목록 보기
64/92
import java.util.*;

class Solution {
    private int answer = 0;
    
    public int solution(int[] numbers, int target) {
         
        int[] op = new int[numbers.length];
        
        brute(0, numbers, op, target);
        
        return answer;
    }
    
    public void brute(int depth, int[] numbers, int[] op, int target)
    {
        if(depth == op.length)
        {
            int sum = numbers[0];
            if(op[0]==1)
                sum*=-1;
            for(int i = 1; i < numbers.length; ++i)
            {
                //System.out.print(op[i]);
                if(op[i] == 0)
                    sum += numbers[i];
                else
                    sum -= numbers[i];
            }
            
            if(sum == target)
                answer++;
            
            //System.out.println();
            return;
        }
        
        for(int i = 0; i <= 1; ++i)
        {
            op[depth] = i;
            brute(depth+1, numbers, op, target);
        }
    }
}
profile
게임개발자 백엔드개발자

0개의 댓글