import java.util.*; public class Solution { int track = 0; int res = 0; public int combination (int[] nums, int target) { backtrack(nums,target); return res; } private void backtrack(int[] nums,int target){ if(track == target){ res++; return; } if(track > target) return; for(int i = 0;i<nums.length;i++){ track += nums[i]; backtrack(nums,target); track -= nums[i]; } } }