Minimum Number of Operations to Make Array XOR Equal to K

MediumArrayBit Manipulation

Solution

export function minOperations(nums: number[], k: number): number {
  function countBit(num: number) {
    let count = 0;
    while (0 < num) {
      if ((num & 1) === 1) {
        count += 1;
      }
      num >>= 1;
    }
    return count;
  }
 
  return countBit(nums.reduce((acc, num) => acc ^ num, k));
}