Files
Coding-Practice/programmers/타겟 넘버/solution.java
T

22 lines
696 B
Java
Raw Normal View History

2022-12-28 18:58:49 +09:00
// [문제 링크]: https://school.programmers.co.kr/learn/courses/30/lessons/43165
2022-12-28 19:06:56 +09:00
import java.util.Arrays;
2022-12-28 18:58:49 +09:00
class Solution {
2022-12-28 19:06:56 +09:00
//DFS
private int dfs(int[] numbers, int target, int depth){
int res = 0;
if(depth == numbers.length){
// System.out.println(Arrays.toString(numbers));
if(Arrays.stream(numbers).sum() == target) return 1;
else return 0;
} else{
res += dfs(numbers, target, depth+1);
numbers[depth] *= -1;
res += dfs(numbers, target, depth+1);
return res;
2022-12-28 18:58:49 +09:00
}
2022-12-28 19:06:56 +09:00
}
public int solution(int[] numbers, int target) {
return dfs(numbers, target,0);
2022-12-28 18:58:49 +09:00
}
}