#include <vector>


using namespace std;


int answer = 0;


void dfs(vector <int> numbers, int target, int sum, int i){

    if(i == numbers.size()){

        if(target == sum){

            answer++;

        }

        return;

    }

    

    dfs(numbers,target,sum+numbers[i],i+1); << 이 부분 ++i로 하면 왜 세그먼트 오류가 나는거죠?

    dfs(numbers,target,sum-numbers[i],i+1);

}


int solution(vector<int> numbers, int target) {

    dfs(numbers,target,0,0);

    return answer;

}