for all the 3pointer/4pointer approach, I feel it's not easy to generalize that approach to address the general question like 'kSum'. Any suggestions?
General question about 3sum/4sum questions

I guess there IS a general solution to ksum problems, that is, recursion. This recursion function should know its target sum, current index, and remaining elements to use, and it solves the subproblem by choosing whether or not to pick the elements at current index.
rec(target, index, remaining){
return rec(target  array[index], index+1, remaining1) "PLUS" rec(target, index+1, remaining);
}if k is greater or equal than 2, I think sorting the array beforehand would be very helpful, since we are potentially doing a klevel loop anyway.
Hope it helps:)

according to this http://en.wikipedia.org/wiki/Subset_sum_problem
Subset sum is generally an NP problem, then Xsum as a sub problem is also an NP in general scope. So even a general solution exists, it is not solvable for big size.
Why Xsum is sub problem of Subset_sum ?  If Xsum is nonNP, then Subset_sum may be divided as several Xsum subproblem and is not NP either which is a contradiction.

I guess you can talking about dynamic programming method. But I am wondering for dp problem, you need define extra space to store the subset and subsum informaiton. How could you know all possible subsum? For instace, array[end_index][subsum]=t means the subset which ending with t has value subsum and in subarray from start to end_index. But how to know the range of subsum?Thanks in advanced.