
Given an array of distinct integers nums and a target integer target , return the number of possible combinations that add up to target .
The test cases are generated so that the answer can fit in a 32-bit integer.
1 <= nums.length <= 2001 <= nums[i] <= 1000All the elements of nums are unique .1 <= target <= 1000Follow up: What if negative numbers are allowed in the given array? How does it change the problem? What limitation we need to add to the question to allow negative numbers?