2275. Largest Combination With Bitwise AND Greater Than Zero LeetCode Solution

In this guide, you will get 2275. Largest Combination With Bitwise AND Greater Than Zero LeetCode Solution with the best time and space complexity. The solution to Largest Combination With Bitwise AND Greater Than Zero problem is provided in various programming languages like C++, Java, and Python. This will be helpful for you if you are preparing for placements, hackathons, interviews, or practice purposes. The solutions provided here are very easy to follow and include detailed explanations.

Table of Contents

  1. Problem Statement
  2. Complexity Analysis
  3. Largest Combination With Bitwise AND Greater Than Zero solution in C++
  4. Largest Combination With Bitwise AND Greater Than Zero solution in Java
  5. Largest Combination With Bitwise AND Greater Than Zero solution in Python
  6. Additional Resources
2275. Largest Combination With Bitwise AND Greater Than Zero LeetCode Solution image

Problem Statement of Largest Combination With Bitwise AND Greater Than Zero

The bitwise AND of an array nums is the bitwise AND of all integers in nums.

For example, for nums = [1, 5, 3], the bitwise AND is equal to 1 & 5 & 3 = 1.
Also, for nums = [7], the bitwise AND is 7.

You are given an array of positive integers candidates. Compute the bitwise AND for all possible combinations of elements in the candidates array.
Return the size of the largest combination of candidates with a bitwise AND greater than 0.

Example 1:

Input: candidates = [16,17,71,62,12,24,14]
Output: 4
Explanation: The combination [16,17,62,24] has a bitwise AND of 16 & 17 & 62 & 24 = 16 > 0.
The size of the combination is 4.
It can be shown that no combination with a size greater than 4 has a bitwise AND greater than 0.
Note that more than one combination may have the largest size.
For example, the combination [62,12,24,14] has a bitwise AND of 62 & 12 & 24 & 14 = 8 > 0.

Example 2:

Input: candidates = [8,8]
Output: 2
Explanation: The largest combination [8,8] has a bitwise AND of 8 & 8 = 8 > 0.
The size of the combination is 2, so we return 2.

Constraints:

1 <= candidates.length <= 105
1 <= candidates[i] <= 107

Complexity Analysis

  • Time Complexity: O(24n) = O(n)
  • Space Complexity: O(1)

2275. Largest Combination With Bitwise AND Greater Than Zero LeetCode Solution in C++

class Solution {
 public:
  int largestCombination(vector<int>& candidates) {
    constexpr int kMaxBit = 24;
    int ans = 0;

    for (int i = 0; i < kMaxBit; ++i) {
      int count = 0;
      for (const int candidate : candidates)
        if (candidate >> i & 1)
          ++count;
      ans = max(ans, count);
    }

    return ans;
  }
};
/* code provided by PROGIEZ */

2275. Largest Combination With Bitwise AND Greater Than Zero LeetCode Solution in Java

class Solution {
  public int largestCombination(int[] candidates) {
    final int kMaxBit = 24;
    int ans = 0;

    for (int i = 0; i < kMaxBit; ++i) {
      int count = 0;
      for (final int candidate : candidates)
        if ((candidate >> i & 1) == 1)
          ++count;
      ans = Math.max(ans, count);
    }

    return ans;
  }
}
// code provided by PROGIEZ

2275. Largest Combination With Bitwise AND Greater Than Zero LeetCode Solution in Python

class Solution:
  def largestCombination(self, candidates: list[int]) -> int:
    return max(sum(c >> i & 1 for c in candidates) for i in range(24))
# code by PROGIEZ

Additional Resources

Happy Coding! Keep following PROGIEZ for more updates and solutions.