Step 1: Start with empty combination [] and target 7
Combination: [] (sum 0), Target left: 7
Why: We begin with no numbers chosen and full target to reach
Step 2: Add 2 to combination: [2], reduce target to 5
Combination: [2] (sum 2), Target left: 5
Why: Try including 2 and see if we can reach target 7
Step 3: Add 2 again: [2, 2], reduce target to 3
Combination: [2, 2] (sum 4), Target left: 3
Why: We can reuse numbers, so try 2 again
Step 4: Add 3: [2, 2, 3], reduce target to 0
Combination: [2, 2, 3] (sum 7), Target left: 0
Why: Sum matches target, so this is a valid combination
Step 5: Backtrack: remove last 3, try next candidate 6 at [2, 2]
Combination: [2, 2], Target left: 3
Why: 3 did not lead to other solutions, try next number
Step 6: Add 6: [2, 2, 6], target left -3 (negative), discard
Combination: [2, 2, 6] invalid (sum 10 > 7)
Why: Sum exceeded target, so discard this path
Step 7: Backtrack to [2], try next candidate 3: [2, 3], target left 2
Combination: [2, 3], Target left: 2
Why: Try next number after 2 to find other combos
Step 8: Add 3 again: [2, 3, 3], target left -1 (negative), discard
Combination: [2, 3, 3] invalid (sum 8 > 7)
Why: Sum exceeded target, discard path
Step 9: Backtrack to [2], try next candidate 6: [2, 6], target left -1, discard
Combination: [2, 6] invalid (sum 8 > 7)
Why: Sum exceeded target, discard path
Step 10: Backtrack to [], try candidate 3: [3], target left 4
Combination: [3], Target left: 4
Step 11: Add 3 again: [3, 3], target left 1
Combination: [3, 3], Target left: 1
Why: Reuse 3 to get closer to target
Step 12: Add 3 again: [3, 3, 3], target left -2, discard
Combination: [3, 3, 3] invalid (sum 9 > 7)
Why: Sum exceeded target, discard path
Step 13: Backtrack to [3, 3], try 6: [3, 3, 6], target left -5, discard
Combination: [3, 3, 6] invalid (sum 12 > 7)
Why: Sum exceeded target, discard path
Step 14: Backtrack to [3], try 6: [3, 6], target left -2, discard
Combination: [3, 6] invalid (sum 9 > 7)
Why: Sum exceeded target, discard path
Step 15: Backtrack to [], try 6: [6], target left 1
Combination: [6], Target left: 1
Step 16: Add 6 again: [6, 6], target left -5, discard
Combination: [6, 6] invalid (sum 12 > 7)
Why: Sum exceeded target, discard path
Step 17: Backtrack to [], try 7: [7], target left 0
Combination: [7], Target left: 0
Why: Sum matches target, valid combination
Result: Valid combinations:
[2, 2, 3]
[7]