Sum of All Subset XOR Totals - Problem

The XOR total of an array is defined as the bitwise XOR of all its elements, or 0 if the array is empty.

For example, the XOR total of the array [2,5,6] is 2 XOR 5 XOR 6 = 1.

Given an array nums, return the sum of all XOR totals for every subset of nums.

Note: Subsets with the same elements should be counted multiple times.

An array a is a subset of an array b if a can be obtained from b by deleting some (possibly zero) elements of b.

Input & Output

Example 1 — Basic Case
$ Input: nums = [1,3]
Output: 6
💡 Note: Subsets: [] (XOR=0), [1] (XOR=1), [3] (XOR=3), [1,3] (XOR=1⊕3=2). Sum: 0+1+3+2 = 6
Example 2 — Three Elements
$ Input: nums = [5,1,6]
Output: 28
💡 Note: 8 subsets: [] (0), [5] (5), [1] (1), [6] (6), [5,1] (4), [5,6] (3), [1,6] (7), [5,1,6] (2). Sum: 0+5+1+6+4+3+7+2 = 28
Example 3 — Single Element
$ Input: nums = [3]
Output: 3
💡 Note: Only 2 subsets: [] (XOR=0) and [3] (XOR=3). Sum: 0+3 = 3

Constraints

  • 1 ≤ nums.length ≤ 12
  • 1 ≤ nums[i] ≤ 20

Visualization

Tap to expand
Sum of All Subset XOR Totals: [5,1,6][] → 0[5] → 5[1] → 1[6] → 6[5,1] → 4[5,6] → 3[1,6] → 7[5,1,6] → 2XOR Calculations:5 ⊕ 1 = 45 ⊕ 6 = 31 ⊕ 6 = 75 ⊕ 1 ⊕ 6 = 2Sum: 0 + 5 + 1 + 6 + 4 + 3 + 7 + 2 = 28Generate all 2³ = 8 subsets and sum their XOR totals
Understanding the Visualization
1
Input
Array [5,1,6] with 3 elements
2
Generate Subsets
Create all 2³ = 8 possible subsets
3
Calculate XOR
Find XOR total for each subset
4
Sum All
Add all XOR totals: 0+5+1+6+4+3+7+2 = 28
Key Takeaway
🎯 Key Insight: Generate all possible subsets and calculate the XOR total for each, then sum them all up
Asked in
Amazon 15 Microsoft 10
25.0K Views
Medium Frequency
~15 min Avg. Time
890 Likes
Ln 1, Col 1
Smart Actions
💡 Explanation
AI Ready
💡 Suggestion Tab to accept Esc to dismiss
// Output will appear here after running code
Code Editor Closed
Click the red button to reopen