Total Hamming Distance

IF
AlgoAxiomStaff Engineers
JSTS
Medium20 mins

The [Hamming distance](https://en.wikipedia.org/wiki/Hamming_distance) between two integers is the number of positions at which the corresponding bits are different.

Given an integer array nums, return the sum of Hamming distances between all the pairs of the integers in nums.

Examples

Example 1:

Input: nums = [4,14,2]

Output: 6

Explanation: In binary representation, the 4 is 0100, 14 is 1110, and 2 is 0010 (just showing the last 4 bits). The answer will be:

Hamming(4, 14) + Hamming(4, 2) + Hamming(14, 2) = 2 + 2 + 2 = 6.

Example 2:

Input: nums = [4,14,4]

Output: 4

Constraints

  • 1 <= nums.length <= 10^4
  • 0 <= nums[i] <= 10^9
Source: Bitwise Manipulation pattern — AlgoAxiom
JavaScript
Test Case 1
root = [1, 2, 3]
Test Case 2
root = [1, 2, 3, 4, 5]
Idle