2044. 统计按位或能得到最大值的子集数目

exiaohu 于 2022-03-15 发布

题目链接:2044. 统计按位或能得到最大值的子集数目

遍历所有可能的子集即可。

from typing import List


class Solution:
    def countMaxOrSubsets(self, nums: List[int]) -> int:
        ans = 0
        for num in nums:
            ans |= num

        ret = 0
        for mask in range(1 << len(nums)):
            val = 0
            for i, num in enumerate(nums):
                if (1 << i) & mask:
                    val |= num

            if val == ans:
                ret += 1
        return ret