https://school.programmers.co.kr/learn/courses/30/lessons/43165
dfs, 백트래킹
#include <string>
#include <vector>
using namespace std;
int answer = 0;
void dfs(int sum, int count, vector<int> numbers, int target) {
int len = numbers.size();
if(count == len) {
if(sum == target) {
answer++;
}
return;
}
dfs(sum+numbers[count], count+1, numbers, target);
dfs(sum-numbers[count], count+1, numbers, target);
}
int solution(vector<int> numbers, int target) {
dfs(0, 0, numbers, target);
return answer;
}