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);
}
}
}