#include <string>
#include <vector>
#include <iostream>
using namespace std;
vector<int> nums;
int t;
int answer = 0;
void dfs(int sum, int depth){
if(depth == nums.size()){
if(sum == t) answer++;
return;
}
dfs(sum-nums[depth], depth+1);
dfs(sum+nums[depth], depth+1);
}
int solution(vector<int> numbers, int target) {
nums = numbers; t = target;
dfs(0,0);
return answer;
}