Skip to main content

2044.js

/** ------------------------------------------------------------------------------
*
* 2044. Count Number of Maximum Bitwise-OR Subsets
* Topics: Backtrack, Bit
* https://leetcode.com/problems/count-number-of-maximum-bitwise-or-subsets/?envType=daily-question&envId=2024-10-18
*
------------------------------------------------------------------------------ */
/**
* @param {number[]} nums
* @return {number}
*/
var countMaxOrSubsets = function (nums) {
let result = 0,
max = 0

const backtrack = (num, start, val) => {
if (val === max) result++

for (let i = start; i < nums.length; i++) {
backtrack(nums, i + 1, val | nums[i])
}
}

for (let num of nums) max |= num
backtrack(nums, 0, 0)
return result
}

console.log()